docs: update generated docs (#981)

diff --git a/docs/dyn/containeranalysis_v1alpha1.projects.occurrences.html b/docs/dyn/containeranalysis_v1alpha1.projects.occurrences.html
index 6e573c3..3788722 100644
--- a/docs/dyn/containeranalysis_v1alpha1.projects.occurrences.html
+++ b/docs/dyn/containeranalysis_v1alpha1.projects.occurrences.html
@@ -93,7 +93,7 @@
   <code><a href="#getVulnerabilitySummary">getVulnerabilitySummary(parent, filter=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Gets a summary of the number and severity of occurrences.</p>
 <p class="toc_element">
-  <code><a href="#list">list(parent, pageToken=None, kind=None, pageSize=None, name=None, filter=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(parent, pageSize=None, kind=None, name=None, filter=None, pageToken=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists active `Occurrences` for a given project matching the filters.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -119,34 +119,217 @@
     The object takes the form of:
 
 { # `Occurrence` includes information about analysis occurrences for an image.
+  &quot;resource&quot;: { #  # 
+      # The resource for which the `Occurrence` applies.
+      # Resource is an entity that can have metadata. E.g., a Docker image.
+    &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+        # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+    &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+    &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+      &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+      &quot;value&quot;: &quot;A String&quot;, # The hash value.
+    },
+  },
+  &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+      # to fix it.
+    &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+        # the associated resource.
+      { # This message wraps a location affected by a vulnerability and its
+          # associated fix (if one is available).
+        &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+              # filter in list requests.
+              # For a discussion of this in Debian/Ubuntu:
+              # http://serverfault.com/questions/604541/debian-packages-version-convention
+              # For a discussion of this in Redhat/Fedora/Centos:
+              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                # If kind is not NORMAL, then the other fields are ignored.
+            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+          },
+          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+              # format. Examples include distro or storage location for vulnerable jar.
+              # This field can be used as a filter in list requests.
+          &quot;package&quot;: &quot;A String&quot;, # The package being described.
+        },
+        &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+              # filter in list requests.
+              # For a discussion of this in Debian/Ubuntu:
+              # http://serverfault.com/questions/604541/debian-packages-version-convention
+              # For a discussion of this in Redhat/Fedora/Centos:
+              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                # If kind is not NORMAL, then the other fields are ignored.
+            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+          },
+          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+              # format. Examples include distro or storage location for vulnerable jar.
+              # This field can be used as a filter in list requests.
+          &quot;package&quot;: &quot;A String&quot;, # The package being described.
+        },
+        &quot;severityName&quot;: &quot;A String&quot;,
+      },
+    ],
+    &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+        # available and note provider assigned severity when distro has not yet
+        # assigned a severity for this vulnerability.
+    &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+        # node.js packages etc)
+    &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+    &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+        # scale of 0-10 where 0 indicates low severity and 10 indicates high
+        # severity.
+  },
+  &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+      # Attestation can be verified using the attached signature. If the verifier
+      # trusts the public key of the signer, then verifying the signature is
+      # sufficient to establish trust.  In this circumstance, the
+      # AttestationAuthority to which this Attestation is attached is primarily
+      # useful for look-up (how to find this Attestation if you already know the
+      # Authority and artifact to be verified) and intent (which authority was this
+      # attestation intended to sign for).
+    &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+        # This message only supports `ATTACHED` signatures, where the payload that is
+        # signed is included alongside the signature itself in the same file.
+      &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+          # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+          # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+          # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+          # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+          # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+          # In gpg, the full fingerprint can be retrieved from the `fpr` field
+          # returned when calling --list-keys with --with-colons.  For example:
+          # ```
+          # gpg --with-colons --with-fingerprint --force-v4-certs \
+          #     --list-keys attester@example.com
+          # tru::1:1513631572:0:3:1:5
+          # pub:...&lt;SNIP&gt;...
+          # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+          # ```
+          # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+      &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+          # equivalent.  Since this message only supports attached signatures, the
+          # payload that was signed must be attached. While the signature format
+          # supported is dependent on the verification implementation, currently only
+          # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+          # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+          # --output=signature.gpg payload.json` will create the signature content
+          # expected in this field in `signature.gpg` for the `payload.json`
+          # attestation payload.
+      &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+          # The verifier must ensure that the provided type is one that the verifier
+          # supports, and that the attestation payload is a valid instantiation of that
+          # type (for example by validating a JSON schema).
+    },
+  },
+  &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+      # specified. This field can be used as a filter in list requests.
   &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
     &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
         # details about the build from source to completion.
-      &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-      &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-          # build providers can enter any desired additional details.
-        &quot;a_key&quot;: &quot;A String&quot;,
-      },
-      &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-      &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-      &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
       &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-        &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-            # Repository.
-          &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-          &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-          &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-          &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-          &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+        &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+            # with a path point to a unique revision of a single file or directory.
+          &quot;labels&quot;: { # Labels with user defined metadata.
+            &quot;a_key&quot;: &quot;A String&quot;,
+          },
+          &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+              # repository (e.g., GitHub).
+            &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+            &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+          },
+          &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+              # Source Repo.
+            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+              &quot;name&quot;: &quot;A String&quot;, # The alias name.
+            },
+            &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+            &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+              &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                  # winged-cargo-31) and a repo name within that project.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+              },
+              &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+            },
+          },
+          &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+            &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                # the hostURI/project.
+            &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+              &quot;name&quot;: &quot;A String&quot;, # The alias name.
+            },
+            &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+          },
         },
-        &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-            # Storage.
+        &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+            # these locations, in the case where the source repository had multiple
+            # remotes or submodules. This list will not include the context specified in
+            # the context field.
+          { # A SourceContext is a reference to a tree of files. A SourceContext together
+              # with a path point to a unique revision of a single file or directory.
+            &quot;labels&quot;: { # Labels with user defined metadata.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                # repository (e.g., GitHub).
+              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+            },
+            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                # Source Repo.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                    # winged-cargo-31) and a repo name within that project.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                },
+                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+              },
+            },
+            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                  # the hostURI/project.
+              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+            },
+          },
+        ],
+        &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+            # location.
             # Google Cloud Storage.
           &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
           &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
               # Requirements]
               # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+        },
+        &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+            # Repository.
+          &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+          &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+          &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+          &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+          &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
         },
         &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
             # source integrity was maintained in the build.
@@ -166,134 +349,18 @@
             ],
           },
         },
-        &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-            # location.
+        &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+            # Storage.
             # Google Cloud Storage.
           &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
           &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
               # Requirements]
               # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-        },
-        &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-            # these locations, in the case where the source repository had multiple
-            # remotes or submodules. This list will not include the context specified in
-            # the context field.
-          { # A SourceContext is a reference to a tree of files. A SourceContext together
-              # with a path point to a unique revision of a single file or directory.
-            &quot;labels&quot;: { # Labels with user defined metadata.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                # repository (e.g., GitHub).
-              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-            },
-            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                  # the hostURI/project.
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-            },
-            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                # Source Repo.
-              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                    # winged-cargo-31) and a repo name within that project.
-                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                },
-              },
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-            },
-          },
-        ],
-        &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-            # with a path point to a unique revision of a single file or directory.
-          &quot;labels&quot;: { # Labels with user defined metadata.
-            &quot;a_key&quot;: &quot;A String&quot;,
-          },
-          &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-              # repository (e.g., GitHub).
-            &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-            &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-          },
-          &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-            &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                # the hostURI/project.
-            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-              &quot;name&quot;: &quot;A String&quot;, # The alias name.
-              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-            },
-            &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-            &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-          },
-          &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-              # Source Repo.
-            &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-              &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-              &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                  # winged-cargo-31) and a repo name within that project.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-              },
-            },
-            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-              &quot;name&quot;: &quot;A String&quot;, # The alias name.
-              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-            },
-            &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-          },
         },
       },
-      &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-      &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-      &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-          # user&#x27;s e-mail address at the time the build was initiated; this address may
-          # not represent the same end-user for all time.
-      &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-      &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-      &quot;commands&quot;: [ # Commands requested by the build.
-        { # Command describes a step performed as part of the build pipeline.
-          &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-              # packaged as a Docker container, as presented to `docker pull`.
-          &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-              # this Command as a dependency.
-          &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-              # this Command.
-          &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-            &quot;A String&quot;,
-          ],
-          &quot;env&quot;: [ # Environment variables set before running this Command.
-            &quot;A String&quot;,
-          ],
-          &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-            &quot;A String&quot;,
-          ],
-        },
-      ],
       &quot;builtArtifacts&quot;: [ # Output of the build.
         { # Artifact describes a build product.
-          &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-              # like gcr.io/projectID/imagename@sha256:123456
-          &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-              # the case of a container build, the name used to push the container image to
-              # Google Container Registry, as presented to `docker push`. Note that a
-              # single Artifact ID can have multiple names, for example if two tags are
-              # applied to one image.
-            &quot;A String&quot;,
-          ],
           &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
               # the case of a container build, the name used to push the container image to
               # Google Container Registry, as presented to `docker push`.
@@ -304,8 +371,51 @@
               # deserialize back into proto.
           &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
               # container.
+          &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+              # the case of a container build, the name used to push the container image to
+              # Google Container Registry, as presented to `docker push`. Note that a
+              # single Artifact ID can have multiple names, for example if two tags are
+              # applied to one image.
+            &quot;A String&quot;,
+          ],
+          &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+              # like gcr.io/projectID/imagename@sha256:123456
         },
       ],
+      &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+      &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+      &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+          # build providers can enter any desired additional details.
+        &quot;a_key&quot;: &quot;A String&quot;,
+      },
+      &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+      &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+      &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+          # user&#x27;s e-mail address at the time the build was initiated; this address may
+          # not represent the same end-user for all time.
+      &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+      &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+      &quot;commands&quot;: [ # Commands requested by the build.
+        { # Command describes a step performed as part of the build pipeline.
+          &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+              # this Command.
+          &quot;env&quot;: [ # Environment variables set before running this Command.
+            &quot;A String&quot;,
+          ],
+          &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+            &quot;A String&quot;,
+          ],
+          &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+              # this Command as a dependency.
+          &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+              # packaged as a Docker container, as presented to `docker pull`.
+          &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+            &quot;A String&quot;,
+          ],
+        },
+      ],
+      &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+      &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
     },
     &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
         # `BuildSignature` in the corresponding Result. After verifying the
@@ -319,69 +429,85 @@
         # provenance is marshalled to json as well to prevent incompatibilities with
         # future changes.
   },
-  &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-      # specified. This field can be used as a filter in list requests.
-  &quot;resource&quot;: { #  # 
-      # The resource for which the `Occurrence` applies.
-      # Resource is an entity that can have metadata. E.g., a Docker image.
-    &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-        # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-    &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-    &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-      &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-      &quot;value&quot;: &quot;A String&quot;, # The hash value.
+  &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+      # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+  &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+    &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+    &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+    &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+    &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+    &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+    &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+        # deployable field with the same name.
+      &quot;A String&quot;,
+    ],
+    &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+  },
+  &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+      # specific upgrade. This presence is supplied via local sources (i.e. it is
+      # present in the mirror and the running system has noticed its availability).
+    &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+    &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+        # for the resource_url. This allows efficient filtering, as well as
+        # making it easier to use the occurrence.
+        # operating system (CPE). Some distributions have additional metadata around
+        # updates, classifying them into various categories and severities.
+      &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+          # upstream operating system upgrade feed.
+      &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+          # https://cpe.mitre.org/specification/.
+      &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+      &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+        &quot;A String&quot;,
+      ],
     },
+    &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+        # For a discussion of this in Debian/Ubuntu:
+        # http://serverfault.com/questions/604541/debian-packages-version-convention
+        # For a discussion of this in Redhat/Fedora/Centos:
+        # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+      &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+      &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+      &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+          # If kind is not NORMAL, then the other fields are ignored.
+      &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+    },
+  },
+  &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+      # in the associated note.
+      # DockerImage relationship.  This image would be produced from a Dockerfile
+      # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+    &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+      &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+          #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+          # Only the name of the final blob is kept.
+          # This field can be used as a filter in list requests.
+      &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+        &quot;A String&quot;,
+      ],
+      &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+          # representation.
+          # This field can be used as a filter in list requests.
+    },
+    &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+        # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+        # following the base image and [1] being the final layer.
+      { # Layer holds metadata specific to a layer of a Docker image.
+        &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+        &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+      },
+    ],
+    &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+        # occurrence.
+    &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+        # associated image basis.
   },
   &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
       # applies. For example, https://gcr.io/project/image@sha256:foo This field
       # can be used as a filter in list requests.
-  &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-      # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-  &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-      # Attestation can be verified using the attached signature. If the verifier
-      # trusts the public key of the signer, then verifying the signature is
-      # sufficient to establish trust.  In this circumstance, the
-      # AttestationAuthority to which this Attestation is attached is primarily
-      # useful for look-up (how to find this Attestation if you already know the
-      # Authority and artifact to be verified) and intent (which authority was this
-      # attestation intended to sign for).
-    &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-        # This message only supports `ATTACHED` signatures, where the payload that is
-        # signed is included alongside the signature itself in the same file.
-      &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-          # equivalent.  Since this message only supports attached signatures, the
-          # payload that was signed must be attached. While the signature format
-          # supported is dependent on the verification implementation, currently only
-          # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-          # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-          # --output=signature.gpg payload.json` will create the signature content
-          # expected in this field in `signature.gpg` for the `payload.json`
-          # attestation payload.
-      &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-          # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-          # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-          # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-          # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-          # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-          # In gpg, the full fingerprint can be retrieved from the `fpr` field
-          # returned when calling --list-keys with --with-colons.  For example:
-          # ```
-          # gpg --with-colons --with-fingerprint --force-v4-certs \
-          #     --list-keys attester@example.com
-          # tru::1:1513631572:0:3:1:5
-          # pub:...&lt;SNIP&gt;...
-          # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-          # ```
-          # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-      &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-          # The verifier must ensure that the provided type is one that the verifier
-          # supports, and that the attestation payload is a valid instantiation of that
-          # type (for example by validating a JSON schema).
-    },
-  },
+  &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
   &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
       # a system.
-    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
     &quot;location&quot;: [ # All of the places within the filesystem versions of this package
         # have been found.
       { # An occurrence of a particular package installation found within a
@@ -395,46 +521,42 @@
             # For a discussion of this in Redhat/Fedora/Centos:
             # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
           &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+          &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
           &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
               # If kind is not NORMAL, then the other fields are ignored.
           &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-          &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
         },
         &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
       },
     ],
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
   },
-  &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-      # specific upgrade. This presence is supplied via local sources (i.e. it is
-      # present in the mirror and the running system has noticed its availability).
-    &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-    &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-        # For a discussion of this in Debian/Ubuntu:
-        # http://serverfault.com/questions/604541/debian-packages-version-convention
-        # For a discussion of this in Redhat/Fedora/Centos:
-        # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-      &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-      &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-          # If kind is not NORMAL, then the other fields are ignored.
-      &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-      &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-    },
-    &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-        # for the resource_url. This allows efficient filtering, as well as
-        # making it easier to use the occurrence.
-        # operating system (CPE). Some distributions have additional metadata around
-        # updates, classifying them into various categories and severities.
-      &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-          # upstream operating system upgrade feed.
-      &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-      &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-          # https://cpe.mitre.org/specification/.
-      &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-        &quot;A String&quot;,
-      ],
-    },
-  },
+  &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+      # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+      # This field can be used as a filter in list requests.
   &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+    &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+    &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+    &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+        # details to show to the user. The LocalizedMessage output only and
+        # populated by the API.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+      &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+    },
     &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
         # This field is deprecated, do not use.
         # network API call.
@@ -451,6 +573,12 @@
       &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
           # originally returns it. If you use the default HTTP mapping, the
           # `name` should be a resource name ending with `operations/{unique_id}`.
+      &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+          # contains progress information and common metadata such as create time.
+          # Some services might not provide such metadata.  Any method that returns a
+          # long-running operation should document the metadata type, if any.
+        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+      },
       &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
           # different programming environments, including REST APIs and RPC APIs. It is
           # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -458,6 +586,9 @@
           #
           # You can find out more about this error model and how to work with it in the
           # [API Design Guide](https://cloud.google.com/apis/design/errors).
+        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+            # user-facing error message should be localized and sent in the
+            # google.rpc.Status.details field, or localized by the client.
         &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
             # message types for APIs to use.
           {
@@ -465,146 +596,15 @@
           },
         ],
         &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-            # user-facing error message should be localized and sent in the
-            # google.rpc.Status.details field, or localized by the client.
-      },
-      &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-          # contains progress information and common metadata such as create time.
-          # Some services might not provide such metadata.  Any method that returns a
-          # long-running operation should document the metadata type, if any.
-        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
       },
       &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
           # If `true`, the operation is completed, and either `error` or `response` is
           # available.
     },
     &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-    &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-    &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-    &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-        # details to show to the user. The LocalizedMessage output only and
-        # populated by the API.
-        # different programming environments, including REST APIs and RPC APIs. It is
-        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-        # three pieces of data: error code, error message, and error details.
-        #
-        # You can find out more about this error model and how to work with it in the
-        # [API Design Guide](https://cloud.google.com/apis/design/errors).
-      &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-          # message types for APIs to use.
-        {
-          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-        },
-      ],
-      &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-      &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-          # user-facing error message should be localized and sent in the
-          # google.rpc.Status.details field, or localized by the client.
-    },
-  },
-  &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-      # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-      # This field can be used as a filter in list requests.
-  &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-    &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-    &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-    &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-        # deployable field with the same name.
-      &quot;A String&quot;,
-    ],
-    &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-    &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-    &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-    &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
   },
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-  &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-      # to fix it.
-    &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-        # available and note provider assigned severity when distro has not yet
-        # assigned a severity for this vulnerability.
-    &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-        # the associated resource.
-      { # This message wraps a location affected by a vulnerability and its
-          # associated fix (if one is available).
-        &quot;severityName&quot;: &quot;A String&quot;,
-        &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-              # filter in list requests.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-              # format. Examples include distro or storage location for vulnerable jar.
-              # This field can be used as a filter in list requests.
-          &quot;package&quot;: &quot;A String&quot;, # The package being described.
-        },
-        &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-              # filter in list requests.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-              # format. Examples include distro or storage location for vulnerable jar.
-              # This field can be used as a filter in list requests.
-          &quot;package&quot;: &quot;A String&quot;, # The package being described.
-        },
-      },
-    ],
-    &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-    &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-        # scale of 0-10 where 0 indicates low severity and 10 indicates high
-        # severity.
-    &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-        # node.js packages etc)
-  },
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-  &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-  &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-      # in the associated note.
-      # DockerImage relationship.  This image would be produced from a Dockerfile
-      # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-    &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-        # associated image basis.
-    &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-        # occurrence.
-    &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-      &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-        &quot;A String&quot;,
-      ],
-      &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-          # representation.
-          # This field can be used as a filter in list requests.
-      &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-          #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-          # Only the name of the final blob is kept.
-          # This field can be used as a filter in list requests.
-    },
-    &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-        # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-        # following the base image and [1] being the final layer.
-      { # Layer holds metadata specific to a layer of a Docker image.
-        &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-        &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-      },
-    ],
-  },
 }
 
   name: string, The name of the project.  Should be of the form &quot;projects/{project_id}&quot;.
@@ -618,34 +618,217 @@
   An object of the form:
 
     { # `Occurrence` includes information about analysis occurrences for an image.
+    &quot;resource&quot;: { #  #
+        # The resource for which the `Occurrence` applies.
+        # Resource is an entity that can have metadata. E.g., a Docker image.
+      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+      },
+    },
+    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+        # to fix it.
+      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+          # the associated resource.
+        { # This message wraps a location affected by a vulnerability and its
+            # associated fix (if one is available).
+          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;severityName&quot;: &quot;A String&quot;,
+        },
+      ],
+      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+          # available and note provider assigned severity when distro has not yet
+          # assigned a severity for this vulnerability.
+      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+          # node.js packages etc)
+      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+          # scale of 0-10 where 0 indicates low severity and 10 indicates high
+          # severity.
+    },
+    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+        # Attestation can be verified using the attached signature. If the verifier
+        # trusts the public key of the signer, then verifying the signature is
+        # sufficient to establish trust.  In this circumstance, the
+        # AttestationAuthority to which this Attestation is attached is primarily
+        # useful for look-up (how to find this Attestation if you already know the
+        # Authority and artifact to be verified) and intent (which authority was this
+        # attestation intended to sign for).
+      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+          # This message only supports `ATTACHED` signatures, where the payload that is
+          # signed is included alongside the signature itself in the same file.
+        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+            # In gpg, the full fingerprint can be retrieved from the `fpr` field
+            # returned when calling --list-keys with --with-colons.  For example:
+            # ```
+            # gpg --with-colons --with-fingerprint --force-v4-certs \
+            #     --list-keys attester@example.com
+            # tru::1:1513631572:0:3:1:5
+            # pub:...&lt;SNIP&gt;...
+            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+            # ```
+            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+            # equivalent.  Since this message only supports attached signatures, the
+            # payload that was signed must be attached. While the signature format
+            # supported is dependent on the verification implementation, currently only
+            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+            # --output=signature.gpg payload.json` will create the signature content
+            # expected in this field in `signature.gpg` for the `payload.json`
+            # attestation payload.
+        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+            # The verifier must ensure that the provided type is one that the verifier
+            # supports, and that the attestation payload is a valid instantiation of that
+            # type (for example by validating a JSON schema).
+      },
+    },
+    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+        # specified. This field can be used as a filter in list requests.
     &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
       &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
           # details about the build from source to completion.
-        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-            # build providers can enter any desired additional details.
-          &quot;a_key&quot;: &quot;A String&quot;,
-        },
-        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
         &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-              # Repository.
-            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+              # with a path point to a unique revision of a single file or directory.
+            &quot;labels&quot;: { # Labels with user defined metadata.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                # repository (e.g., GitHub).
+              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+            },
+            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                # Source Repo.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                    # winged-cargo-31) and a repo name within that project.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                },
+                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+              },
+            },
+            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                  # the hostURI/project.
+              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+            },
           },
-          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-              # Storage.
+          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+              # these locations, in the case where the source repository had multiple
+              # remotes or submodules. This list will not include the context specified in
+              # the context field.
+            { # A SourceContext is a reference to a tree of files. A SourceContext together
+                # with a path point to a unique revision of a single file or directory.
+              &quot;labels&quot;: { # Labels with user defined metadata.
+                &quot;a_key&quot;: &quot;A String&quot;,
+              },
+              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                  # repository (e.g., GitHub).
+                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+              },
+              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                  # Source Repo.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                      # winged-cargo-31) and a repo name within that project.
+                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                  },
+                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+                },
+              },
+              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                    # the hostURI/project.
+                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+              },
+            },
+          ],
+          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+              # location.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+          },
+          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+              # Repository.
+            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
           },
           &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
               # source integrity was maintained in the build.
@@ -665,134 +848,18 @@
               ],
             },
           },
-          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-              # location.
+          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+              # Storage.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-          },
-          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-              # these locations, in the case where the source repository had multiple
-              # remotes or submodules. This list will not include the context specified in
-              # the context field.
-            { # A SourceContext is a reference to a tree of files. A SourceContext together
-                # with a path point to a unique revision of a single file or directory.
-              &quot;labels&quot;: { # Labels with user defined metadata.
-                &quot;a_key&quot;: &quot;A String&quot;,
-              },
-              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                  # repository (e.g., GitHub).
-                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-              },
-              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                    # the hostURI/project.
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-              },
-              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                  # Source Repo.
-                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                      # winged-cargo-31) and a repo name within that project.
-                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                  },
-                },
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-              },
-            },
-          ],
-          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-              # with a path point to a unique revision of a single file or directory.
-            &quot;labels&quot;: { # Labels with user defined metadata.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                # repository (e.g., GitHub).
-              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-            },
-            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                  # the hostURI/project.
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-            },
-            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                # Source Repo.
-              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                    # winged-cargo-31) and a repo name within that project.
-                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                },
-              },
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-            },
           },
         },
-        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-            # user&#x27;s e-mail address at the time the build was initiated; this address may
-            # not represent the same end-user for all time.
-        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-        &quot;commands&quot;: [ # Commands requested by the build.
-          { # Command describes a step performed as part of the build pipeline.
-            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-                # packaged as a Docker container, as presented to `docker pull`.
-            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-                # this Command as a dependency.
-            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-                # this Command.
-            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-              &quot;A String&quot;,
-            ],
-            &quot;env&quot;: [ # Environment variables set before running this Command.
-              &quot;A String&quot;,
-            ],
-            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-              &quot;A String&quot;,
-            ],
-          },
-        ],
         &quot;builtArtifacts&quot;: [ # Output of the build.
           { # Artifact describes a build product.
-            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-                # like gcr.io/projectID/imagename@sha256:123456
-            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-                # the case of a container build, the name used to push the container image to
-                # Google Container Registry, as presented to `docker push`. Note that a
-                # single Artifact ID can have multiple names, for example if two tags are
-                # applied to one image.
-              &quot;A String&quot;,
-            ],
             &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
                 # the case of a container build, the name used to push the container image to
                 # Google Container Registry, as presented to `docker push`.
@@ -803,8 +870,51 @@
                 # deserialize back into proto.
             &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
                 # container.
+            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+                # the case of a container build, the name used to push the container image to
+                # Google Container Registry, as presented to `docker push`. Note that a
+                # single Artifact ID can have multiple names, for example if two tags are
+                # applied to one image.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+                # like gcr.io/projectID/imagename@sha256:123456
           },
         ],
+        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+            # build providers can enter any desired additional details.
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+            # user&#x27;s e-mail address at the time the build was initiated; this address may
+            # not represent the same end-user for all time.
+        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+        &quot;commands&quot;: [ # Commands requested by the build.
+          { # Command describes a step performed as part of the build pipeline.
+            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+                # this Command.
+            &quot;env&quot;: [ # Environment variables set before running this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+                # this Command as a dependency.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+                # packaged as a Docker container, as presented to `docker pull`.
+            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+              &quot;A String&quot;,
+            ],
+          },
+        ],
+        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
       },
       &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
           # `BuildSignature` in the corresponding Result. After verifying the
@@ -818,69 +928,85 @@
           # provenance is marshalled to json as well to prevent incompatibilities with
           # future changes.
     },
-    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-        # specified. This field can be used as a filter in list requests.
-    &quot;resource&quot;: { #  #
-        # The resource for which the `Occurrence` applies.
-        # Resource is an entity that can have metadata. E.g., a Docker image.
-      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+          # deployable field with the same name.
+        &quot;A String&quot;,
+      ],
+      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+    },
+    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+        # specific upgrade. This presence is supplied via local sources (i.e. it is
+        # present in the mirror and the running system has noticed its availability).
+      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+          # for the resource_url. This allows efficient filtering, as well as
+          # making it easier to use the occurrence.
+          # operating system (CPE). Some distributions have additional metadata around
+          # updates, classifying them into various categories and severities.
+        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+            # upstream operating system upgrade feed.
+        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+            # https://cpe.mitre.org/specification/.
+        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+          &quot;A String&quot;,
+        ],
       },
+      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+          # For a discussion of this in Debian/Ubuntu:
+          # http://serverfault.com/questions/604541/debian-packages-version-convention
+          # For a discussion of this in Redhat/Fedora/Centos:
+          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+            # If kind is not NORMAL, then the other fields are ignored.
+        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+      },
+    },
+    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+        # in the associated note.
+        # DockerImage relationship.  This image would be produced from a Dockerfile
+        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+            # Only the name of the final blob is kept.
+            # This field can be used as a filter in list requests.
+        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+          &quot;A String&quot;,
+        ],
+        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+            # representation.
+            # This field can be used as a filter in list requests.
+      },
+      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+          # following the base image and [1] being the final layer.
+        { # Layer holds metadata specific to a layer of a Docker image.
+          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+        },
+      ],
+      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+          # occurrence.
+      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+          # associated image basis.
     },
     &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
         # applies. For example, https://gcr.io/project/image@sha256:foo This field
         # can be used as a filter in list requests.
-    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-        # Attestation can be verified using the attached signature. If the verifier
-        # trusts the public key of the signer, then verifying the signature is
-        # sufficient to establish trust.  In this circumstance, the
-        # AttestationAuthority to which this Attestation is attached is primarily
-        # useful for look-up (how to find this Attestation if you already know the
-        # Authority and artifact to be verified) and intent (which authority was this
-        # attestation intended to sign for).
-      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-          # This message only supports `ATTACHED` signatures, where the payload that is
-          # signed is included alongside the signature itself in the same file.
-        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-            # equivalent.  Since this message only supports attached signatures, the
-            # payload that was signed must be attached. While the signature format
-            # supported is dependent on the verification implementation, currently only
-            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-            # --output=signature.gpg payload.json` will create the signature content
-            # expected in this field in `signature.gpg` for the `payload.json`
-            # attestation payload.
-        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-            # In gpg, the full fingerprint can be retrieved from the `fpr` field
-            # returned when calling --list-keys with --with-colons.  For example:
-            # ```
-            # gpg --with-colons --with-fingerprint --force-v4-certs \
-            #     --list-keys attester@example.com
-            # tru::1:1513631572:0:3:1:5
-            # pub:...&lt;SNIP&gt;...
-            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-            # ```
-            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-            # The verifier must ensure that the provided type is one that the verifier
-            # supports, and that the attestation payload is a valid instantiation of that
-            # type (for example by validating a JSON schema).
-      },
-    },
+    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
     &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
         # a system.
-      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
       &quot;location&quot;: [ # All of the places within the filesystem versions of this package
           # have been found.
         { # An occurrence of a particular package installation found within a
@@ -894,46 +1020,42 @@
               # For a discussion of this in Redhat/Fedora/Centos:
               # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
             &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
             &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
                 # If kind is not NORMAL, then the other fields are ignored.
             &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
           },
           &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
         },
       ],
+      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
     },
-    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-        # specific upgrade. This presence is supplied via local sources (i.e. it is
-        # present in the mirror and the running system has noticed its availability).
-      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-          # For a discussion of this in Debian/Ubuntu:
-          # http://serverfault.com/questions/604541/debian-packages-version-convention
-          # For a discussion of this in Redhat/Fedora/Centos:
-          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-            # If kind is not NORMAL, then the other fields are ignored.
-        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-      },
-      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-          # for the resource_url. This allows efficient filtering, as well as
-          # making it easier to use the occurrence.
-          # operating system (CPE). Some distributions have additional metadata around
-          # updates, classifying them into various categories and severities.
-        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-            # upstream operating system upgrade feed.
-        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-            # https://cpe.mitre.org/specification/.
-        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-          &quot;A String&quot;,
-        ],
-      },
-    },
+    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+        # This field can be used as a filter in list requests.
     &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+          # details to show to the user. The LocalizedMessage output only and
+          # populated by the API.
+          # different programming environments, including REST APIs and RPC APIs. It is
+          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+          # three pieces of data: error code, error message, and error details.
+          #
+          # You can find out more about this error model and how to work with it in the
+          # [API Design Guide](https://cloud.google.com/apis/design/errors).
+        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+            # user-facing error message should be localized and sent in the
+            # google.rpc.Status.details field, or localized by the client.
+        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+            # message types for APIs to use.
+          {
+            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+          },
+        ],
+        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+      },
       &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
           # This field is deprecated, do not use.
           # network API call.
@@ -950,6 +1072,12 @@
         &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
             # originally returns it. If you use the default HTTP mapping, the
             # `name` should be a resource name ending with `operations/{unique_id}`.
+        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+            # contains progress information and common metadata such as create time.
+            # Some services might not provide such metadata.  Any method that returns a
+            # long-running operation should document the metadata type, if any.
+          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+        },
         &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
             # different programming environments, including REST APIs and RPC APIs. It is
             # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -957,6 +1085,9 @@
             #
             # You can find out more about this error model and how to work with it in the
             # [API Design Guide](https://cloud.google.com/apis/design/errors).
+          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+              # user-facing error message should be localized and sent in the
+              # google.rpc.Status.details field, or localized by the client.
           &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
               # message types for APIs to use.
             {
@@ -964,146 +1095,15 @@
             },
           ],
           &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-              # user-facing error message should be localized and sent in the
-              # google.rpc.Status.details field, or localized by the client.
-        },
-        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-            # contains progress information and common metadata such as create time.
-            # Some services might not provide such metadata.  Any method that returns a
-            # long-running operation should document the metadata type, if any.
-          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
         },
         &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
             # If `true`, the operation is completed, and either `error` or `response` is
             # available.
       },
       &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-          # details to show to the user. The LocalizedMessage output only and
-          # populated by the API.
-          # different programming environments, including REST APIs and RPC APIs. It is
-          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-          # three pieces of data: error code, error message, and error details.
-          #
-          # You can find out more about this error model and how to work with it in the
-          # [API Design Guide](https://cloud.google.com/apis/design/errors).
-        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-            # message types for APIs to use.
-          {
-            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-          },
-        ],
-        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-            # user-facing error message should be localized and sent in the
-            # google.rpc.Status.details field, or localized by the client.
-      },
-    },
-    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-        # This field can be used as a filter in list requests.
-    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-          # deployable field with the same name.
-        &quot;A String&quot;,
-      ],
-      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
     },
     &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-        # to fix it.
-      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-          # available and note provider assigned severity when distro has not yet
-          # assigned a severity for this vulnerability.
-      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-          # the associated resource.
-        { # This message wraps a location affected by a vulnerability and its
-            # associated fix (if one is available).
-          &quot;severityName&quot;: &quot;A String&quot;,
-          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-        },
-      ],
-      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-          # scale of 0-10 where 0 indicates low severity and 10 indicates high
-          # severity.
-      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-          # node.js packages etc)
-    },
     &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-        # in the associated note.
-        # DockerImage relationship.  This image would be produced from a Dockerfile
-        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-          # associated image basis.
-      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-          # occurrence.
-      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-          &quot;A String&quot;,
-        ],
-        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-            # representation.
-            # This field can be used as a filter in list requests.
-        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-            # Only the name of the final blob is kept.
-            # This field can be used as a filter in list requests.
-      },
-      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-          # following the base image and [1] being the final layer.
-        { # Layer holds metadata specific to a layer of a Docker image.
-          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-        },
-      ],
-    },
   }</pre>
 </div>
 
@@ -1151,34 +1151,217 @@
   An object of the form:
 
     { # `Occurrence` includes information about analysis occurrences for an image.
+    &quot;resource&quot;: { #  #
+        # The resource for which the `Occurrence` applies.
+        # Resource is an entity that can have metadata. E.g., a Docker image.
+      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+      },
+    },
+    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+        # to fix it.
+      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+          # the associated resource.
+        { # This message wraps a location affected by a vulnerability and its
+            # associated fix (if one is available).
+          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;severityName&quot;: &quot;A String&quot;,
+        },
+      ],
+      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+          # available and note provider assigned severity when distro has not yet
+          # assigned a severity for this vulnerability.
+      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+          # node.js packages etc)
+      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+          # scale of 0-10 where 0 indicates low severity and 10 indicates high
+          # severity.
+    },
+    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+        # Attestation can be verified using the attached signature. If the verifier
+        # trusts the public key of the signer, then verifying the signature is
+        # sufficient to establish trust.  In this circumstance, the
+        # AttestationAuthority to which this Attestation is attached is primarily
+        # useful for look-up (how to find this Attestation if you already know the
+        # Authority and artifact to be verified) and intent (which authority was this
+        # attestation intended to sign for).
+      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+          # This message only supports `ATTACHED` signatures, where the payload that is
+          # signed is included alongside the signature itself in the same file.
+        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+            # In gpg, the full fingerprint can be retrieved from the `fpr` field
+            # returned when calling --list-keys with --with-colons.  For example:
+            # ```
+            # gpg --with-colons --with-fingerprint --force-v4-certs \
+            #     --list-keys attester@example.com
+            # tru::1:1513631572:0:3:1:5
+            # pub:...&lt;SNIP&gt;...
+            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+            # ```
+            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+            # equivalent.  Since this message only supports attached signatures, the
+            # payload that was signed must be attached. While the signature format
+            # supported is dependent on the verification implementation, currently only
+            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+            # --output=signature.gpg payload.json` will create the signature content
+            # expected in this field in `signature.gpg` for the `payload.json`
+            # attestation payload.
+        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+            # The verifier must ensure that the provided type is one that the verifier
+            # supports, and that the attestation payload is a valid instantiation of that
+            # type (for example by validating a JSON schema).
+      },
+    },
+    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+        # specified. This field can be used as a filter in list requests.
     &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
       &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
           # details about the build from source to completion.
-        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-            # build providers can enter any desired additional details.
-          &quot;a_key&quot;: &quot;A String&quot;,
-        },
-        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
         &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-              # Repository.
-            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+              # with a path point to a unique revision of a single file or directory.
+            &quot;labels&quot;: { # Labels with user defined metadata.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                # repository (e.g., GitHub).
+              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+            },
+            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                # Source Repo.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                    # winged-cargo-31) and a repo name within that project.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                },
+                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+              },
+            },
+            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                  # the hostURI/project.
+              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+            },
           },
-          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-              # Storage.
+          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+              # these locations, in the case where the source repository had multiple
+              # remotes or submodules. This list will not include the context specified in
+              # the context field.
+            { # A SourceContext is a reference to a tree of files. A SourceContext together
+                # with a path point to a unique revision of a single file or directory.
+              &quot;labels&quot;: { # Labels with user defined metadata.
+                &quot;a_key&quot;: &quot;A String&quot;,
+              },
+              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                  # repository (e.g., GitHub).
+                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+              },
+              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                  # Source Repo.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                      # winged-cargo-31) and a repo name within that project.
+                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                  },
+                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+                },
+              },
+              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                    # the hostURI/project.
+                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+              },
+            },
+          ],
+          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+              # location.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+          },
+          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+              # Repository.
+            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
           },
           &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
               # source integrity was maintained in the build.
@@ -1198,134 +1381,18 @@
               ],
             },
           },
-          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-              # location.
+          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+              # Storage.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-          },
-          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-              # these locations, in the case where the source repository had multiple
-              # remotes or submodules. This list will not include the context specified in
-              # the context field.
-            { # A SourceContext is a reference to a tree of files. A SourceContext together
-                # with a path point to a unique revision of a single file or directory.
-              &quot;labels&quot;: { # Labels with user defined metadata.
-                &quot;a_key&quot;: &quot;A String&quot;,
-              },
-              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                  # repository (e.g., GitHub).
-                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-              },
-              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                    # the hostURI/project.
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-              },
-              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                  # Source Repo.
-                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                      # winged-cargo-31) and a repo name within that project.
-                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                  },
-                },
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-              },
-            },
-          ],
-          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-              # with a path point to a unique revision of a single file or directory.
-            &quot;labels&quot;: { # Labels with user defined metadata.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                # repository (e.g., GitHub).
-              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-            },
-            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                  # the hostURI/project.
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-            },
-            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                # Source Repo.
-              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                    # winged-cargo-31) and a repo name within that project.
-                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                },
-              },
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-            },
           },
         },
-        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-            # user&#x27;s e-mail address at the time the build was initiated; this address may
-            # not represent the same end-user for all time.
-        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-        &quot;commands&quot;: [ # Commands requested by the build.
-          { # Command describes a step performed as part of the build pipeline.
-            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-                # packaged as a Docker container, as presented to `docker pull`.
-            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-                # this Command as a dependency.
-            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-                # this Command.
-            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-              &quot;A String&quot;,
-            ],
-            &quot;env&quot;: [ # Environment variables set before running this Command.
-              &quot;A String&quot;,
-            ],
-            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-              &quot;A String&quot;,
-            ],
-          },
-        ],
         &quot;builtArtifacts&quot;: [ # Output of the build.
           { # Artifact describes a build product.
-            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-                # like gcr.io/projectID/imagename@sha256:123456
-            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-                # the case of a container build, the name used to push the container image to
-                # Google Container Registry, as presented to `docker push`. Note that a
-                # single Artifact ID can have multiple names, for example if two tags are
-                # applied to one image.
-              &quot;A String&quot;,
-            ],
             &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
                 # the case of a container build, the name used to push the container image to
                 # Google Container Registry, as presented to `docker push`.
@@ -1336,8 +1403,51 @@
                 # deserialize back into proto.
             &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
                 # container.
+            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+                # the case of a container build, the name used to push the container image to
+                # Google Container Registry, as presented to `docker push`. Note that a
+                # single Artifact ID can have multiple names, for example if two tags are
+                # applied to one image.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+                # like gcr.io/projectID/imagename@sha256:123456
           },
         ],
+        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+            # build providers can enter any desired additional details.
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+            # user&#x27;s e-mail address at the time the build was initiated; this address may
+            # not represent the same end-user for all time.
+        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+        &quot;commands&quot;: [ # Commands requested by the build.
+          { # Command describes a step performed as part of the build pipeline.
+            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+                # this Command.
+            &quot;env&quot;: [ # Environment variables set before running this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+                # this Command as a dependency.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+                # packaged as a Docker container, as presented to `docker pull`.
+            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+              &quot;A String&quot;,
+            ],
+          },
+        ],
+        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
       },
       &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
           # `BuildSignature` in the corresponding Result. After verifying the
@@ -1351,69 +1461,85 @@
           # provenance is marshalled to json as well to prevent incompatibilities with
           # future changes.
     },
-    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-        # specified. This field can be used as a filter in list requests.
-    &quot;resource&quot;: { #  #
-        # The resource for which the `Occurrence` applies.
-        # Resource is an entity that can have metadata. E.g., a Docker image.
-      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+          # deployable field with the same name.
+        &quot;A String&quot;,
+      ],
+      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+    },
+    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+        # specific upgrade. This presence is supplied via local sources (i.e. it is
+        # present in the mirror and the running system has noticed its availability).
+      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+          # for the resource_url. This allows efficient filtering, as well as
+          # making it easier to use the occurrence.
+          # operating system (CPE). Some distributions have additional metadata around
+          # updates, classifying them into various categories and severities.
+        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+            # upstream operating system upgrade feed.
+        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+            # https://cpe.mitre.org/specification/.
+        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+          &quot;A String&quot;,
+        ],
       },
+      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+          # For a discussion of this in Debian/Ubuntu:
+          # http://serverfault.com/questions/604541/debian-packages-version-convention
+          # For a discussion of this in Redhat/Fedora/Centos:
+          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+            # If kind is not NORMAL, then the other fields are ignored.
+        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+      },
+    },
+    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+        # in the associated note.
+        # DockerImage relationship.  This image would be produced from a Dockerfile
+        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+            # Only the name of the final blob is kept.
+            # This field can be used as a filter in list requests.
+        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+          &quot;A String&quot;,
+        ],
+        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+            # representation.
+            # This field can be used as a filter in list requests.
+      },
+      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+          # following the base image and [1] being the final layer.
+        { # Layer holds metadata specific to a layer of a Docker image.
+          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+        },
+      ],
+      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+          # occurrence.
+      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+          # associated image basis.
     },
     &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
         # applies. For example, https://gcr.io/project/image@sha256:foo This field
         # can be used as a filter in list requests.
-    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-        # Attestation can be verified using the attached signature. If the verifier
-        # trusts the public key of the signer, then verifying the signature is
-        # sufficient to establish trust.  In this circumstance, the
-        # AttestationAuthority to which this Attestation is attached is primarily
-        # useful for look-up (how to find this Attestation if you already know the
-        # Authority and artifact to be verified) and intent (which authority was this
-        # attestation intended to sign for).
-      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-          # This message only supports `ATTACHED` signatures, where the payload that is
-          # signed is included alongside the signature itself in the same file.
-        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-            # equivalent.  Since this message only supports attached signatures, the
-            # payload that was signed must be attached. While the signature format
-            # supported is dependent on the verification implementation, currently only
-            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-            # --output=signature.gpg payload.json` will create the signature content
-            # expected in this field in `signature.gpg` for the `payload.json`
-            # attestation payload.
-        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-            # In gpg, the full fingerprint can be retrieved from the `fpr` field
-            # returned when calling --list-keys with --with-colons.  For example:
-            # ```
-            # gpg --with-colons --with-fingerprint --force-v4-certs \
-            #     --list-keys attester@example.com
-            # tru::1:1513631572:0:3:1:5
-            # pub:...&lt;SNIP&gt;...
-            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-            # ```
-            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-            # The verifier must ensure that the provided type is one that the verifier
-            # supports, and that the attestation payload is a valid instantiation of that
-            # type (for example by validating a JSON schema).
-      },
-    },
+    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
     &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
         # a system.
-      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
       &quot;location&quot;: [ # All of the places within the filesystem versions of this package
           # have been found.
         { # An occurrence of a particular package installation found within a
@@ -1427,46 +1553,42 @@
               # For a discussion of this in Redhat/Fedora/Centos:
               # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
             &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
             &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
                 # If kind is not NORMAL, then the other fields are ignored.
             &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
           },
           &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
         },
       ],
+      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
     },
-    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-        # specific upgrade. This presence is supplied via local sources (i.e. it is
-        # present in the mirror and the running system has noticed its availability).
-      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-          # For a discussion of this in Debian/Ubuntu:
-          # http://serverfault.com/questions/604541/debian-packages-version-convention
-          # For a discussion of this in Redhat/Fedora/Centos:
-          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-            # If kind is not NORMAL, then the other fields are ignored.
-        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-      },
-      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-          # for the resource_url. This allows efficient filtering, as well as
-          # making it easier to use the occurrence.
-          # operating system (CPE). Some distributions have additional metadata around
-          # updates, classifying them into various categories and severities.
-        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-            # upstream operating system upgrade feed.
-        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-            # https://cpe.mitre.org/specification/.
-        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-          &quot;A String&quot;,
-        ],
-      },
-    },
+    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+        # This field can be used as a filter in list requests.
     &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+          # details to show to the user. The LocalizedMessage output only and
+          # populated by the API.
+          # different programming environments, including REST APIs and RPC APIs. It is
+          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+          # three pieces of data: error code, error message, and error details.
+          #
+          # You can find out more about this error model and how to work with it in the
+          # [API Design Guide](https://cloud.google.com/apis/design/errors).
+        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+            # user-facing error message should be localized and sent in the
+            # google.rpc.Status.details field, or localized by the client.
+        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+            # message types for APIs to use.
+          {
+            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+          },
+        ],
+        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+      },
       &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
           # This field is deprecated, do not use.
           # network API call.
@@ -1483,6 +1605,12 @@
         &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
             # originally returns it. If you use the default HTTP mapping, the
             # `name` should be a resource name ending with `operations/{unique_id}`.
+        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+            # contains progress information and common metadata such as create time.
+            # Some services might not provide such metadata.  Any method that returns a
+            # long-running operation should document the metadata type, if any.
+          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+        },
         &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
             # different programming environments, including REST APIs and RPC APIs. It is
             # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -1490,6 +1618,9 @@
             #
             # You can find out more about this error model and how to work with it in the
             # [API Design Guide](https://cloud.google.com/apis/design/errors).
+          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+              # user-facing error message should be localized and sent in the
+              # google.rpc.Status.details field, or localized by the client.
           &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
               # message types for APIs to use.
             {
@@ -1497,146 +1628,15 @@
             },
           ],
           &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-              # user-facing error message should be localized and sent in the
-              # google.rpc.Status.details field, or localized by the client.
-        },
-        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-            # contains progress information and common metadata such as create time.
-            # Some services might not provide such metadata.  Any method that returns a
-            # long-running operation should document the metadata type, if any.
-          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
         },
         &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
             # If `true`, the operation is completed, and either `error` or `response` is
             # available.
       },
       &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-          # details to show to the user. The LocalizedMessage output only and
-          # populated by the API.
-          # different programming environments, including REST APIs and RPC APIs. It is
-          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-          # three pieces of data: error code, error message, and error details.
-          #
-          # You can find out more about this error model and how to work with it in the
-          # [API Design Guide](https://cloud.google.com/apis/design/errors).
-        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-            # message types for APIs to use.
-          {
-            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-          },
-        ],
-        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-            # user-facing error message should be localized and sent in the
-            # google.rpc.Status.details field, or localized by the client.
-      },
-    },
-    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-        # This field can be used as a filter in list requests.
-    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-          # deployable field with the same name.
-        &quot;A String&quot;,
-      ],
-      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
     },
     &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-        # to fix it.
-      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-          # available and note provider assigned severity when distro has not yet
-          # assigned a severity for this vulnerability.
-      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-          # the associated resource.
-        { # This message wraps a location affected by a vulnerability and its
-            # associated fix (if one is available).
-          &quot;severityName&quot;: &quot;A String&quot;,
-          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-        },
-      ],
-      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-          # scale of 0-10 where 0 indicates low severity and 10 indicates high
-          # severity.
-      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-          # node.js packages etc)
-    },
     &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-        # in the associated note.
-        # DockerImage relationship.  This image would be produced from a Dockerfile
-        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-          # associated image basis.
-      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-          # occurrence.
-      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-          &quot;A String&quot;,
-        ],
-        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-            # representation.
-            # This field can be used as a filter in list requests.
-        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-            # Only the name of the final blob is kept.
-            # This field can be used as a filter in list requests.
-      },
-      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-          # following the base image and [1] being the final layer.
-        { # Layer holds metadata specific to a layer of a Docker image.
-          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-        },
-      ],
-    },
   }</pre>
 </div>
 
@@ -1753,48 +1753,10 @@
       #
       # For a description of IAM and its features, see the
       # [IAM documentation](https://cloud.google.com/iam/docs/).
-    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
-        # prevent simultaneous updates of a policy from overwriting each other.
-        # It is strongly suggested that systems make use of the `etag` in the
-        # read-modify-write cycle to perform policy updates in order to avoid race
-        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-        # systems are expected to put that etag in the request to `setIamPolicy` to
-        # ensure that their change will be applied to the same version of the policy.
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-    &quot;version&quot;: 42, # Specifies the format of the policy.
-        #
-        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-        # are rejected.
-        #
-        # Any operation that affects conditional role bindings must specify version
-        # `3`. This requirement applies to the following operations:
-        #
-        # * Getting a policy that includes a conditional role binding
-        # * Adding a conditional role binding to a policy
-        # * Changing a conditional role binding in a policy
-        # * Removing any role binding, with or without a condition, from a policy
-        #   that includes conditions
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-        #
-        # If a policy does not include any conditions, operations on that policy may
-        # specify any valid version or leave the field unset.
-        #
-        # To learn which resources support conditions in their IAM policies, see the
-        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
     &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
         # `condition` that determines how and when the `bindings` are applied. Each
         # of the `bindings` must contain at least one member.
       { # Associates `members` with a `role`.
-        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
-            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
         &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
             #
             # If the condition evaluates to `true`, then this binding applies to the
@@ -1840,12 +1802,12 @@
           &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
               # its purpose. This can be used e.g. in UIs which allow to enter the
               # expression.
+          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+              # syntax.
           &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
               # reporting, e.g. a file name and a position in the file.
           &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
               # describes the expression, e.g. when hovered over it in a UI.
-          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
-              # syntax.
         },
         &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
             # `members` can have the following values:
@@ -1892,8 +1854,46 @@
             #
           &quot;A String&quot;,
         ],
+        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
       },
     ],
+    &quot;version&quot;: 42, # Specifies the format of the policy.
+        #
+        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+        # are rejected.
+        #
+        # Any operation that affects conditional role bindings must specify version
+        # `3`. This requirement applies to the following operations:
+        #
+        # * Getting a policy that includes a conditional role binding
+        # * Adding a conditional role binding to a policy
+        # * Changing a conditional role binding in a policy
+        # * Removing any role binding, with or without a condition, from a policy
+        #   that includes conditions
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+        #
+        # If a policy does not include any conditions, operations on that policy may
+        # specify any valid version or leave the field unset.
+        #
+        # To learn which resources support conditions in their IAM policies, see the
+        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+        # prevent simultaneous updates of a policy from overwriting each other.
+        # It is strongly suggested that systems make use of the `etag` in the
+        # read-modify-write cycle to perform policy updates in order to avoid race
+        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+        # systems are expected to put that etag in the request to `setIamPolicy` to
+        # ensure that their change will be applied to the same version of the policy.
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
   }</pre>
 </div>
 
@@ -1913,224 +1913,224 @@
   An object of the form:
 
     { # Provides a detailed description of a `Note`.
-    &quot;relatedUrl&quot;: [ # URLs associated with this note
-      { # Metadata for any related URL information
-        &quot;url&quot;: &quot;A String&quot;, # Specific URL to associate with the note
-        &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL
-      },
-    ],
-    &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note, null if note does not expire.
-    &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
-        # relationship.  Linked occurrences are derived from this or an
-        # equivalent image via:
-        #   FROM &lt;Basis.resource_url&gt;
-        # Or an equivalent reference, e.g. a tag of the resource_url.
-      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image.
-        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-          &quot;A String&quot;,
-        ],
-        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-            # representation.
-            # This field can be used as a filter in list requests.
-        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-            # Only the name of the final blob is kept.
-            # This field can be used as a filter in list requests.
-      },
-      &quot;resourceUrl&quot;: &quot;A String&quot;, # The resource_url for the resource representing the basis of
-          # associated occurrence images.
-    },
-    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which kind of note is specified. This
-        # field can be used as a filter in list requests.
-    &quot;buildType&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of # Build provenance type for a verifiable build.
-        # the provenance message in linked BuildDetails.
-      &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this
-          # `BuilderDetails`.
-        &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
-            # findings are valid and unchanged. If `key_type` is empty, this defaults
-            # to PEM encoded public keys.
-            #
-            # This field may be empty if `key_id` references an external key.
-            #
-            # For Cloud Build based signatures, this is a PEM encoded public
-            # key. To verify the Cloud Build signature, place the contents of
-            # this field into a file (public.pem). The signature field is base64-decoded
-            # into its binary representation in signature.bin, and the provenance bytes
-            # from `BuildDetails` are base64-decoded into a binary representation in
-            # signed.bin. OpenSSL can then verify the signature:
-            # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
-        &quot;keyId&quot;: &quot;A String&quot;, # An Id for the key used to sign. This could be either an Id for the key
-            # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the
-            # CN for a cert), or a reference to an external key (such as a reference to a
-            # key in Cloud Key Management Service).
-        &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
-            # `key_id`
-        &quot;signature&quot;: &quot;A String&quot;, # Signature of the related `BuildProvenance`, encoded in a base64 string.
-      },
-      &quot;builderVersion&quot;: &quot;A String&quot;, # Version of the builder which produced this Note.
-    },
-    &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this `Note`.
-    &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
-      &quot;resourceUri&quot;: [ # Resource URI for the artifact being deployed.
-        &quot;A String&quot;,
-      ],
-    },
-    &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this `Note`.
-    &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;.  For # A note describing an attestation role.
-        # example, an organization might have one `AttestationAuthority` for &quot;QA&quot; and
-        # one for &quot;build&quot;.  This Note is intended to act strictly as a grouping
-        # mechanism for the attached Occurrences (Attestations).  This grouping
-        # mechanism also provides a security boundary, since IAM ACLs gate the ability
-        # for a principle to attach an Occurrence to a given Note.  It also provides a
-        # single point of lookup to find all attached Attestation Occurrences, even if
-        # they don&#x27;t all live in the same project.
-      &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the
-          # AttestationAuthority.  Because the name of a Note acts as its resource
-          # reference, it is important to disambiguate the canonical name of the Note
-          # (which might be a UUID for security purposes) from &quot;readable&quot; names more
-          # suitable for debug output.  Note that these hints should NOT be used to
-          # look up AttestationAuthorities in security sensitive contexts, such as when
-          # looking up Attestations to verify.
-        &quot;humanReadableName&quot;: &quot;A String&quot;, # The human readable name of this Attestation Authority, for example &quot;qa&quot;.
-      },
-    },
-    &quot;name&quot;: &quot;A String&quot;, # The name of the note in the form
-        # &quot;projects/{provider_project_id}/notes/{NOTE_ID}&quot;
-    &quot;vulnerabilityType&quot;: { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note.
-      &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability
-      &quot;details&quot;: [ # All information about the package to specifically identify this
-          # vulnerability. One entry per (version range and cpe_uri) the
-          # package vulnerability has manifested in.
-        { # Identifies all occurrences of this vulnerability in the package for a
-            # specific distro/location
-            # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
-          &quot;fixedLocation&quot;: { # The location of the vulnerability # The fix for this specific package version.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
+      &quot;package&quot;: { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers.
+          # various channels.
+          # e.g. glibc (aka libc6) is distributed by many, at various versions.
+        &quot;distribution&quot;: [ # The various channels by which a package is distributed.
+          { # This represents a particular channel of distribution for a given package.
+              # e.g. Debian&#x27;s jessie-backports dpkg mirror
+            &quot;latestVersion&quot;: { # Version contains structured information about the version of the package. # The latest available version of this package in
+                # this distribution channel.
                 # For a discussion of this in Debian/Ubuntu:
                 # http://serverfault.com/questions/604541/debian-packages-version-convention
                 # For a discussion of this in Redhat/Fedora/Centos:
                 # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
               &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
               &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
                   # If kind is not NORMAL, then the other fields are ignored.
               &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
             },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+            &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
+            &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution
+                # channel were built
+            &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/)
+                # denoting the package manager version distributing a package.
+            &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
           },
-          &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-              # node.js packages etc)
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in
-              # which the vulnerability manifests.  Examples include distro or storage
-              # location for vulnerable jar.
-              # This field can be used as a filter in list requests.
-          &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
-          &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
-          &quot;package&quot;: &quot;A String&quot;, # The name of the package where the vulnerability was found.
-              # This field can be used as a filter in list requests.
-          &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of the package. # The max version of the package in which the vulnerability exists.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;isObsolete&quot;: True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to
-              # obsolete details.
+        ],
+        &quot;name&quot;: &quot;A String&quot;, # The name of the package.
+      },
+      &quot;name&quot;: &quot;A String&quot;, # The name of the note in the form
+          # &quot;projects/{provider_project_id}/notes/{NOTE_ID}&quot;
+      &quot;relatedUrl&quot;: [ # URLs associated with this note
+        { # Metadata for any related URL information
+          &quot;label&quot;: &quot;A String&quot;, # Label to describe usage of the URL
+          &quot;url&quot;: &quot;A String&quot;, # Specific URL to associate with the note
         },
       ],
-      &quot;cvssScore&quot;: 3.14, # The CVSS score for this Vulnerability.
-    },
-    &quot;upgrade&quot;: { # An Upgrade Note represents a potential upgrade of a package to a given # A note describing an upgrade.
-        # version. For each package version combination (i.e. bash 4.0, bash 4.1,
-        # bash 4.1.2), there will be a Upgrade Note.
-      &quot;version&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in machine + human readable form.
-          # For a discussion of this in Debian/Ubuntu:
-          # http://serverfault.com/questions/604541/debian-packages-version-convention
-          # For a discussion of this in Redhat/Fedora/Centos:
-          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-            # If kind is not NORMAL, then the other fields are ignored.
-        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-      },
-      &quot;distributions&quot;: [ # Metadata about the upgrade for each specific operating system.
-        { # The Upgrade Distribution represents metadata about the Upgrade for each
-            # operating system (CPE). Some distributions have additional metadata around
-            # updates, classifying them into various categories and severities.
-          &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-              # upstream operating system upgrade feed.
-          &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-          &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-              # https://cpe.mitre.org/specification/.
-          &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+      &quot;expirationTime&quot;: &quot;A String&quot;, # Time of expiration for this note, null if note does not expire.
+      &quot;baseImage&quot;: { # Basis describes the base image portion (Note) of the DockerImage # A note describing a base image.
+          # relationship.  Linked occurrences are derived from this or an
+          # equivalent image via:
+          #   FROM &lt;Basis.resource_url&gt;
+          # Or an equivalent reference, e.g. a tag of the resource_url.
+        &quot;resourceUrl&quot;: &quot;A String&quot;, # The resource_url for the resource representing the basis of
+            # associated occurrence images.
+        &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the base image.
+          &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+              #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+              # Only the name of the final blob is kept.
+              # This field can be used as a filter in list requests.
+          &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
             &quot;A String&quot;,
           ],
+          &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+              # representation.
+              # This field can be used as a filter in list requests.
         },
-      ],
-      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-    },
-    &quot;package&quot;: { # This represents a particular package that is distributed over # A note describing a package hosted by various package managers.
-        # various channels.
-        # e.g. glibc (aka libc6) is distributed by many, at various versions.
-      &quot;name&quot;: &quot;A String&quot;, # The name of the package.
-      &quot;distribution&quot;: [ # The various channels by which a package is distributed.
-        { # This represents a particular channel of distribution for a given package.
-            # e.g. Debian&#x27;s jessie-backports dpkg mirror
-          &quot;latestVersion&quot;: { # Version contains structured information about the version of the package. # The latest available version of this package in
-              # this distribution channel.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+      },
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
+          # filter in list requests.
+      &quot;vulnerabilityType&quot;: { # VulnerabilityType provides metadata about a security vulnerability. # A package vulnerability type of note.
+        &quot;details&quot;: [ # All information about the package to specifically identify this
+            # vulnerability. One entry per (version range and cpe_uri) the
+            # package vulnerability has manifested in.
+          { # Identifies all occurrences of this vulnerability in the package for a
+              # specific distro/location
+              # For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
+            &quot;isObsolete&quot;: True or False, # Whether this Detail is obsolete. Occurrences are expected not to point to
+                # obsolete details.
+            &quot;minAffectedVersion&quot;: { # Version contains structured information about the version of the package. # The min version of the package in which the vulnerability exists.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;maxAffectedVersion&quot;: { # Version contains structured information about the version of the package. # The max version of the package in which the vulnerability exists.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;packageType&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+                # node.js packages etc)
+            &quot;fixedLocation&quot;: { # The location of the vulnerability # The fix for this specific package version.
+              &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                  # filter in list requests.
+                  # For a discussion of this in Debian/Ubuntu:
+                  # http://serverfault.com/questions/604541/debian-packages-version-convention
+                  # For a discussion of this in Redhat/Fedora/Centos:
+                  # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+                &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+                &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+                &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                    # If kind is not NORMAL, then the other fields are ignored.
+                &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+              },
+              &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                  # format. Examples include distro or storage location for vulnerable jar.
+                  # This field can be used as a filter in list requests.
+              &quot;package&quot;: &quot;A String&quot;, # The package being described.
+            },
+            &quot;description&quot;: &quot;A String&quot;, # A vendor-specific description of this note.
+            &quot;package&quot;: &quot;A String&quot;, # The name of the package where the vulnerability was found.
+                # This field can be used as a filter in list requests.
+            &quot;severityName&quot;: &quot;A String&quot;, # The severity (eg: distro assigned severity) for this vulnerability.
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/) in
+                # which the vulnerability manifests.  Examples include distro or storage
+                # location for vulnerable jar.
+                # This field can be used as a filter in list requests.
           },
-          &quot;description&quot;: &quot;A String&quot;, # The distribution channel-specific description of this package.
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format](https://cpe.mitre.org/specification/)
-              # denoting the package manager version distributing a package.
-          &quot;url&quot;: &quot;A String&quot;, # The distribution channel-specific homepage for this package.
-          &quot;architecture&quot;: &quot;A String&quot;, # The CPU architecture for which packages in this distribution
-              # channel were built
-          &quot;maintainer&quot;: &quot;A String&quot;, # A freeform string denoting the maintainer of this package.
+        ],
+        &quot;severity&quot;: &quot;A String&quot;, # Note provider assigned impact of the vulnerability
+        &quot;cvssScore&quot;: 3.14, # The CVSS score for this Vulnerability.
+      },
+      &quot;buildType&quot;: { # Note holding the version of the provider&#x27;s builder and the signature of # Build provenance type for a verifiable build.
+          # the provenance message in linked BuildDetails.
+        &quot;signature&quot;: { # Message encapsulating the signature of the verified build. # Signature of the build in Occurrences pointing to the Note containing this
+            # `BuilderDetails`.
+          &quot;keyId&quot;: &quot;A String&quot;, # An Id for the key used to sign. This could be either an Id for the key
+              # stored in `public_key` (such as the Id or fingerprint for a PGP key, or the
+              # CN for a cert), or a reference to an external key (such as a reference to a
+              # key in Cloud Key Management Service).
+          &quot;signature&quot;: &quot;A String&quot;, # Signature of the related `BuildProvenance`, encoded in a base64 string.
+          &quot;keyType&quot;: &quot;A String&quot;, # The type of the key, either stored in `public_key` or referenced in
+              # `key_id`
+          &quot;publicKey&quot;: &quot;A String&quot;, # Public key of the builder which can be used to verify that the related
+              # findings are valid and unchanged. If `key_type` is empty, this defaults
+              # to PEM encoded public keys.
+              #
+              # This field may be empty if `key_id` references an external key.
+              #
+              # For Cloud Build based signatures, this is a PEM encoded public
+              # key. To verify the Cloud Build signature, place the contents of
+              # this field into a file (public.pem). The signature field is base64-decoded
+              # into its binary representation in signature.bin, and the provenance bytes
+              # from `BuildDetails` are base64-decoded into a binary representation in
+              # signed.bin. OpenSSL can then verify the signature:
+              # `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
         },
-      ],
-    },
-    &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this note was created. This field can be used as a
-        # filter in list requests.
-    &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type.
-        # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
-        # consumer&#x27;s project at the start of analysis. The occurrence&#x27;s operation will
-        # indicate the status of the analysis. Absence of an occurrence linked to this
-        # note for a resource indicates that analysis hasn&#x27;t started.
-      &quot;analysisKind&quot;: &quot;A String&quot;, # The kind of analysis that is handled by this discovery.
-    },
-    &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
-        # a filter in list requests.
-  }</pre>
+        &quot;builderVersion&quot;: &quot;A String&quot;, # Version of the builder which produced this Note.
+      },
+      &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which kind of note is specified. This
+          # field can be used as a filter in list requests.
+      &quot;longDescription&quot;: &quot;A String&quot;, # A detailed description of this `Note`.
+      &quot;deployable&quot;: { # An artifact that can be deployed in some runtime. # A note describing something that can be deployed.
+        &quot;resourceUri&quot;: [ # Resource URI for the artifact being deployed.
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this note was last updated. This field can be used as
+          # a filter in list requests.
+      &quot;shortDescription&quot;: &quot;A String&quot;, # A one sentence description of this `Note`.
+      &quot;discovery&quot;: { # A note that indicates a type of analysis a provider would perform. This note # A note describing a provider/analysis type.
+          # exists in a provider&#x27;s project. A `Discovery` occurrence is created in a
+          # consumer&#x27;s project at the start of analysis. The occurrence&#x27;s operation will
+          # indicate the status of the analysis. Absence of an occurrence linked to this
+          # note for a resource indicates that analysis hasn&#x27;t started.
+        &quot;analysisKind&quot;: &quot;A String&quot;, # The kind of analysis that is handled by this discovery.
+      },
+      &quot;attestationAuthority&quot;: { # Note kind that represents a logical attestation &quot;role&quot; or &quot;authority&quot;.  For # A note describing an attestation role.
+          # example, an organization might have one `AttestationAuthority` for &quot;QA&quot; and
+          # one for &quot;build&quot;.  This Note is intended to act strictly as a grouping
+          # mechanism for the attached Occurrences (Attestations).  This grouping
+          # mechanism also provides a security boundary, since IAM ACLs gate the ability
+          # for a principle to attach an Occurrence to a given Note.  It also provides a
+          # single point of lookup to find all attached Attestation Occurrences, even if
+          # they don&#x27;t all live in the same project.
+        &quot;hint&quot;: { # This submessage provides human-readable hints about the purpose of the
+            # AttestationAuthority.  Because the name of a Note acts as its resource
+            # reference, it is important to disambiguate the canonical name of the Note
+            # (which might be a UUID for security purposes) from &quot;readable&quot; names more
+            # suitable for debug output.  Note that these hints should NOT be used to
+            # look up AttestationAuthorities in security sensitive contexts, such as when
+            # looking up Attestations to verify.
+          &quot;humanReadableName&quot;: &quot;A String&quot;, # The human readable name of this Attestation Authority, for example &quot;qa&quot;.
+        },
+      },
+      &quot;upgrade&quot;: { # An Upgrade Note represents a potential upgrade of a package to a given # A note describing an upgrade.
+          # version. For each package version combination (i.e. bash 4.0, bash 4.1,
+          # bash 4.1.2), there will be a Upgrade Note.
+        &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+        &quot;version&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in machine + human readable form.
+            # For a discussion of this in Debian/Ubuntu:
+            # http://serverfault.com/questions/604541/debian-packages-version-convention
+            # For a discussion of this in Redhat/Fedora/Centos:
+            # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+          &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+          &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+          &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+              # If kind is not NORMAL, then the other fields are ignored.
+          &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+        },
+        &quot;distributions&quot;: [ # Metadata about the upgrade for each specific operating system.
+          { # The Upgrade Distribution represents metadata about the Upgrade for each
+              # operating system (CPE). Some distributions have additional metadata around
+              # updates, classifying them into various categories and severities.
+            &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+                # upstream operating system upgrade feed.
+            &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+                # https://cpe.mitre.org/specification/.
+            &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+            &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+              &quot;A String&quot;,
+            ],
+          },
+        ],
+      },
+    }</pre>
 </div>
 
 <div class="method">
@@ -2161,18 +2161,18 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(parent, pageToken=None, kind=None, pageSize=None, name=None, filter=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(parent, pageSize=None, kind=None, name=None, filter=None, pageToken=None, x__xgafv=None)</code>
   <pre>Lists active `Occurrences` for a given project matching the filters.
 
 Args:
   parent: string, This contains the project Id for example: projects/{project_id}. (required)
-  pageToken: string, Token to provide to skip to a particular spot in the list.
-  kind: string, The kind of occurrences to filter on.
   pageSize: integer, Number of occurrences to return in the list.
+  kind: string, The kind of occurrences to filter on.
   name: string, The name field contains the project Id. For example:
 &quot;projects/{project_id}
 @Deprecated
   filter: string, The filter expression.
+  pageToken: string, Token to provide to skip to a particular spot in the list.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -2182,36 +2182,222 @@
   An object of the form:
 
     { # Response including listed active occurrences.
+    &quot;nextPageToken&quot;: &quot;A String&quot;, # The next pagination token in the list response. It should be used as
+        # `page_token` for the following request. An empty value means no more
+        # results.
     &quot;occurrences&quot;: [ # The occurrences requested.
       { # `Occurrence` includes information about analysis occurrences for an image.
+        &quot;resource&quot;: { #  #
+            # The resource for which the `Occurrence` applies.
+            # Resource is an entity that can have metadata. E.g., a Docker image.
+          &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+              # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+          &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+          &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+            &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+            &quot;value&quot;: &quot;A String&quot;, # The hash value.
+          },
+        },
+        &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+            # to fix it.
+          &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+              # the associated resource.
+            { # This message wraps a location affected by a vulnerability and its
+                # associated fix (if one is available).
+              &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+                &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                    # filter in list requests.
+                    # For a discussion of this in Debian/Ubuntu:
+                    # http://serverfault.com/questions/604541/debian-packages-version-convention
+                    # For a discussion of this in Redhat/Fedora/Centos:
+                    # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+                  &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+                  &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+                  &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                      # If kind is not NORMAL, then the other fields are ignored.
+                  &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+                },
+                &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                    # format. Examples include distro or storage location for vulnerable jar.
+                    # This field can be used as a filter in list requests.
+                &quot;package&quot;: &quot;A String&quot;, # The package being described.
+              },
+              &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+                &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                    # filter in list requests.
+                    # For a discussion of this in Debian/Ubuntu:
+                    # http://serverfault.com/questions/604541/debian-packages-version-convention
+                    # For a discussion of this in Redhat/Fedora/Centos:
+                    # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+                  &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+                  &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+                  &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                      # If kind is not NORMAL, then the other fields are ignored.
+                  &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+                },
+                &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                    # format. Examples include distro or storage location for vulnerable jar.
+                    # This field can be used as a filter in list requests.
+                &quot;package&quot;: &quot;A String&quot;, # The package being described.
+              },
+              &quot;severityName&quot;: &quot;A String&quot;,
+            },
+          ],
+          &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+              # available and note provider assigned severity when distro has not yet
+              # assigned a severity for this vulnerability.
+          &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+              # node.js packages etc)
+          &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+          &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+              # scale of 0-10 where 0 indicates low severity and 10 indicates high
+              # severity.
+        },
+        &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+            # Attestation can be verified using the attached signature. If the verifier
+            # trusts the public key of the signer, then verifying the signature is
+            # sufficient to establish trust.  In this circumstance, the
+            # AttestationAuthority to which this Attestation is attached is primarily
+            # useful for look-up (how to find this Attestation if you already know the
+            # Authority and artifact to be verified) and intent (which authority was this
+            # attestation intended to sign for).
+          &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+              # This message only supports `ATTACHED` signatures, where the payload that is
+              # signed is included alongside the signature itself in the same file.
+            &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+                # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+                # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+                # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+                # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+                # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+                # In gpg, the full fingerprint can be retrieved from the `fpr` field
+                # returned when calling --list-keys with --with-colons.  For example:
+                # ```
+                # gpg --with-colons --with-fingerprint --force-v4-certs \
+                #     --list-keys attester@example.com
+                # tru::1:1513631572:0:3:1:5
+                # pub:...&lt;SNIP&gt;...
+                # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+                # ```
+                # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+            &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+                # equivalent.  Since this message only supports attached signatures, the
+                # payload that was signed must be attached. While the signature format
+                # supported is dependent on the verification implementation, currently only
+                # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+                # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+                # --output=signature.gpg payload.json` will create the signature content
+                # expected in this field in `signature.gpg` for the `payload.json`
+                # attestation payload.
+            &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+                # The verifier must ensure that the provided type is one that the verifier
+                # supports, and that the attestation payload is a valid instantiation of that
+                # type (for example by validating a JSON schema).
+          },
+        },
+        &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+            # specified. This field can be used as a filter in list requests.
         &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
           &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
               # details about the build from source to completion.
-            &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-            &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-                # build providers can enter any desired additional details.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-            &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-            &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
             &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-              &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-                  # Repository.
-                &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-                &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-                &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-                &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-                &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+              &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+                  # with a path point to a unique revision of a single file or directory.
+                &quot;labels&quot;: { # Labels with user defined metadata.
+                  &quot;a_key&quot;: &quot;A String&quot;,
+                },
+                &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                    # repository (e.g., GitHub).
+                  &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+                  &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+                },
+                &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                    # Source Repo.
+                  &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                    &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                    &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                  },
+                  &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+                  &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                    &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                        # winged-cargo-31) and a repo name within that project.
+                      &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                      &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                    },
+                    &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+                  },
+                },
+                &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+                  &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                      # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                      # the hostURI/project.
+                  &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+                  &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                    &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                    &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                  },
+                  &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+                },
               },
-              &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-                  # Storage.
+              &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+                  # these locations, in the case where the source repository had multiple
+                  # remotes or submodules. This list will not include the context specified in
+                  # the context field.
+                { # A SourceContext is a reference to a tree of files. A SourceContext together
+                    # with a path point to a unique revision of a single file or directory.
+                  &quot;labels&quot;: { # Labels with user defined metadata.
+                    &quot;a_key&quot;: &quot;A String&quot;,
+                  },
+                  &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                      # repository (e.g., GitHub).
+                    &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+                    &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+                  },
+                  &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                      # Source Repo.
+                    &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                      &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                      &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                    },
+                    &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+                    &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                      &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                          # winged-cargo-31) and a repo name within that project.
+                        &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                        &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                      },
+                      &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+                    },
+                  },
+                  &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+                    &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                        # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                        # the hostURI/project.
+                    &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+                    &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                      &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                      &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                    },
+                    &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+                  },
+                },
+              ],
+              &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+                  # location.
                   # Google Cloud Storage.
                 &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+                &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
                 &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                     # Requirements]
                     # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-                &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+              },
+              &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+                  # Repository.
+                &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+                &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+                &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+                &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+                &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
               },
               &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
                   # source integrity was maintained in the build.
@@ -2231,134 +2417,18 @@
                   ],
                 },
               },
-              &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-                  # location.
+              &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+                  # Storage.
                   # Google Cloud Storage.
                 &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+                &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
                 &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                     # Requirements]
                     # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-                &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-              },
-              &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-                  # these locations, in the case where the source repository had multiple
-                  # remotes or submodules. This list will not include the context specified in
-                  # the context field.
-                { # A SourceContext is a reference to a tree of files. A SourceContext together
-                    # with a path point to a unique revision of a single file or directory.
-                  &quot;labels&quot;: { # Labels with user defined metadata.
-                    &quot;a_key&quot;: &quot;A String&quot;,
-                  },
-                  &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                      # repository (e.g., GitHub).
-                    &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-                    &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-                  },
-                  &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-                    &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                        # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                        # the hostURI/project.
-                    &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                      &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                      &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                    },
-                    &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-                    &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-                  },
-                  &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                      # Source Repo.
-                    &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                      &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                      &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                          # winged-cargo-31) and a repo name within that project.
-                        &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                        &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                      },
-                    },
-                    &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                      &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                      &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                    },
-                    &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-                  },
-                },
-              ],
-              &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-                  # with a path point to a unique revision of a single file or directory.
-                &quot;labels&quot;: { # Labels with user defined metadata.
-                  &quot;a_key&quot;: &quot;A String&quot;,
-                },
-                &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                    # repository (e.g., GitHub).
-                  &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-                  &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-                },
-                &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-                  &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                      # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                      # the hostURI/project.
-                  &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                    &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                    &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                  },
-                  &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-                  &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-                },
-                &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                    # Source Repo.
-                  &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                    &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                    &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                        # winged-cargo-31) and a repo name within that project.
-                      &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                      &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                    },
-                  },
-                  &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                    &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                    &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                  },
-                  &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-                },
               },
             },
-            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-            &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-            &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-                # user&#x27;s e-mail address at the time the build was initiated; this address may
-                # not represent the same end-user for all time.
-            &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-            &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-            &quot;commands&quot;: [ # Commands requested by the build.
-              { # Command describes a step performed as part of the build pipeline.
-                &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-                    # packaged as a Docker container, as presented to `docker pull`.
-                &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-                    # this Command as a dependency.
-                &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-                    # this Command.
-                &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-                  &quot;A String&quot;,
-                ],
-                &quot;env&quot;: [ # Environment variables set before running this Command.
-                  &quot;A String&quot;,
-                ],
-                &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-                  &quot;A String&quot;,
-                ],
-              },
-            ],
             &quot;builtArtifacts&quot;: [ # Output of the build.
               { # Artifact describes a build product.
-                &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-                    # like gcr.io/projectID/imagename@sha256:123456
-                &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-                    # the case of a container build, the name used to push the container image to
-                    # Google Container Registry, as presented to `docker push`. Note that a
-                    # single Artifact ID can have multiple names, for example if two tags are
-                    # applied to one image.
-                  &quot;A String&quot;,
-                ],
                 &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
                     # the case of a container build, the name used to push the container image to
                     # Google Container Registry, as presented to `docker push`.
@@ -2369,8 +2439,51 @@
                     # deserialize back into proto.
                 &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
                     # container.
+                &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+                    # the case of a container build, the name used to push the container image to
+                    # Google Container Registry, as presented to `docker push`. Note that a
+                    # single Artifact ID can have multiple names, for example if two tags are
+                    # applied to one image.
+                  &quot;A String&quot;,
+                ],
+                &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+                    # like gcr.io/projectID/imagename@sha256:123456
               },
             ],
+            &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+            &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+            &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+                # build providers can enter any desired additional details.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+            &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+            &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+                # user&#x27;s e-mail address at the time the build was initiated; this address may
+                # not represent the same end-user for all time.
+            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+            &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+            &quot;commands&quot;: [ # Commands requested by the build.
+              { # Command describes a step performed as part of the build pipeline.
+                &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+                    # this Command.
+                &quot;env&quot;: [ # Environment variables set before running this Command.
+                  &quot;A String&quot;,
+                ],
+                &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+                  &quot;A String&quot;,
+                ],
+                &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+                    # this Command as a dependency.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+                    # packaged as a Docker container, as presented to `docker pull`.
+                &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+                  &quot;A String&quot;,
+                ],
+              },
+            ],
+            &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+            &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
           },
           &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
               # `BuildSignature` in the corresponding Result. After verifying the
@@ -2384,69 +2497,85 @@
               # provenance is marshalled to json as well to prevent incompatibilities with
               # future changes.
         },
-        &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-            # specified. This field can be used as a filter in list requests.
-        &quot;resource&quot;: { #  #
-            # The resource for which the `Occurrence` applies.
-            # Resource is an entity that can have metadata. E.g., a Docker image.
-          &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-              # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-          &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-          &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-            &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-            &quot;value&quot;: &quot;A String&quot;, # The hash value.
+        &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+            # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+        &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+          &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+          &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+          &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+          &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+          &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+          &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+              # deployable field with the same name.
+            &quot;A String&quot;,
+          ],
+          &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+        },
+        &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+            # specific upgrade. This presence is supplied via local sources (i.e. it is
+            # present in the mirror and the running system has noticed its availability).
+          &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+          &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+              # for the resource_url. This allows efficient filtering, as well as
+              # making it easier to use the occurrence.
+              # operating system (CPE). Some distributions have additional metadata around
+              # updates, classifying them into various categories and severities.
+            &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+                # upstream operating system upgrade feed.
+            &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+                # https://cpe.mitre.org/specification/.
+            &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+            &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+              &quot;A String&quot;,
+            ],
           },
+          &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+              # For a discussion of this in Debian/Ubuntu:
+              # http://serverfault.com/questions/604541/debian-packages-version-convention
+              # For a discussion of this in Redhat/Fedora/Centos:
+              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                # If kind is not NORMAL, then the other fields are ignored.
+            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+          },
+        },
+        &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+            # in the associated note.
+            # DockerImage relationship.  This image would be produced from a Dockerfile
+            # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+          &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+            &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+                #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+                # Only the name of the final blob is kept.
+                # This field can be used as a filter in list requests.
+            &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+              &quot;A String&quot;,
+            ],
+            &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+                # representation.
+                # This field can be used as a filter in list requests.
+          },
+          &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+              # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+              # following the base image and [1] being the final layer.
+            { # Layer holds metadata specific to a layer of a Docker image.
+              &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+              &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+            },
+          ],
+          &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+              # occurrence.
+          &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+              # associated image basis.
         },
         &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
             # applies. For example, https://gcr.io/project/image@sha256:foo This field
             # can be used as a filter in list requests.
-        &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-            # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-        &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-            # Attestation can be verified using the attached signature. If the verifier
-            # trusts the public key of the signer, then verifying the signature is
-            # sufficient to establish trust.  In this circumstance, the
-            # AttestationAuthority to which this Attestation is attached is primarily
-            # useful for look-up (how to find this Attestation if you already know the
-            # Authority and artifact to be verified) and intent (which authority was this
-            # attestation intended to sign for).
-          &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-              # This message only supports `ATTACHED` signatures, where the payload that is
-              # signed is included alongside the signature itself in the same file.
-            &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-                # equivalent.  Since this message only supports attached signatures, the
-                # payload that was signed must be attached. While the signature format
-                # supported is dependent on the verification implementation, currently only
-                # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-                # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-                # --output=signature.gpg payload.json` will create the signature content
-                # expected in this field in `signature.gpg` for the `payload.json`
-                # attestation payload.
-            &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-                # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-                # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-                # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-                # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-                # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-                # In gpg, the full fingerprint can be retrieved from the `fpr` field
-                # returned when calling --list-keys with --with-colons.  For example:
-                # ```
-                # gpg --with-colons --with-fingerprint --force-v4-certs \
-                #     --list-keys attester@example.com
-                # tru::1:1513631572:0:3:1:5
-                # pub:...&lt;SNIP&gt;...
-                # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-                # ```
-                # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-            &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-                # The verifier must ensure that the provided type is one that the verifier
-                # supports, and that the attestation payload is a valid instantiation of that
-                # type (for example by validating a JSON schema).
-          },
-        },
+        &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
         &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
             # a system.
-          &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
           &quot;location&quot;: [ # All of the places within the filesystem versions of this package
               # have been found.
             { # An occurrence of a particular package installation found within a
@@ -2460,46 +2589,42 @@
                   # For a discussion of this in Redhat/Fedora/Centos:
                   # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
                 &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+                &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
                 &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
                     # If kind is not NORMAL, then the other fields are ignored.
                 &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-                &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
               },
               &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
             },
           ],
+          &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
         },
-        &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-            # specific upgrade. This presence is supplied via local sources (i.e. it is
-            # present in the mirror and the running system has noticed its availability).
-          &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-          &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-              # for the resource_url. This allows efficient filtering, as well as
-              # making it easier to use the occurrence.
-              # operating system (CPE). Some distributions have additional metadata around
-              # updates, classifying them into various categories and severities.
-            &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-                # upstream operating system upgrade feed.
-            &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-            &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-                # https://cpe.mitre.org/specification/.
-            &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-              &quot;A String&quot;,
-            ],
-          },
-        },
+        &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+            # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+            # This field can be used as a filter in list requests.
         &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+          &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+          &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+          &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+              # details to show to the user. The LocalizedMessage output only and
+              # populated by the API.
+              # different programming environments, including REST APIs and RPC APIs. It is
+              # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+              # three pieces of data: error code, error message, and error details.
+              #
+              # You can find out more about this error model and how to work with it in the
+              # [API Design Guide](https://cloud.google.com/apis/design/errors).
+            &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+                # user-facing error message should be localized and sent in the
+                # google.rpc.Status.details field, or localized by the client.
+            &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+                # message types for APIs to use.
+              {
+                &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+              },
+            ],
+            &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+          },
           &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
               # This field is deprecated, do not use.
               # network API call.
@@ -2516,6 +2641,12 @@
             &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
                 # originally returns it. If you use the default HTTP mapping, the
                 # `name` should be a resource name ending with `operations/{unique_id}`.
+            &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+                # contains progress information and common metadata such as create time.
+                # Some services might not provide such metadata.  Any method that returns a
+                # long-running operation should document the metadata type, if any.
+              &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+            },
             &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
                 # different programming environments, including REST APIs and RPC APIs. It is
                 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -2523,6 +2654,9 @@
                 #
                 # You can find out more about this error model and how to work with it in the
                 # [API Design Guide](https://cloud.google.com/apis/design/errors).
+              &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+                  # user-facing error message should be localized and sent in the
+                  # google.rpc.Status.details field, or localized by the client.
               &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
                   # message types for APIs to use.
                 {
@@ -2530,151 +2664,17 @@
                 },
               ],
               &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-              &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-                  # user-facing error message should be localized and sent in the
-                  # google.rpc.Status.details field, or localized by the client.
-            },
-            &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-                # contains progress information and common metadata such as create time.
-                # Some services might not provide such metadata.  Any method that returns a
-                # long-running operation should document the metadata type, if any.
-              &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
             },
             &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
                 # If `true`, the operation is completed, and either `error` or `response` is
                 # available.
           },
           &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-          &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-          &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-          &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-              # details to show to the user. The LocalizedMessage output only and
-              # populated by the API.
-              # different programming environments, including REST APIs and RPC APIs. It is
-              # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-              # three pieces of data: error code, error message, and error details.
-              #
-              # You can find out more about this error model and how to work with it in the
-              # [API Design Guide](https://cloud.google.com/apis/design/errors).
-            &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-                # message types for APIs to use.
-              {
-                &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-              },
-            ],
-            &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-            &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-                # user-facing error message should be localized and sent in the
-                # google.rpc.Status.details field, or localized by the client.
-          },
-        },
-        &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-            # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-            # This field can be used as a filter in list requests.
-        &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-          &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-          &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-          &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-              # deployable field with the same name.
-            &quot;A String&quot;,
-          ],
-          &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-          &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-          &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-          &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
         },
         &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-        &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-            # to fix it.
-          &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-              # available and note provider assigned severity when distro has not yet
-              # assigned a severity for this vulnerability.
-          &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-              # the associated resource.
-            { # This message wraps a location affected by a vulnerability and its
-                # associated fix (if one is available).
-              &quot;severityName&quot;: &quot;A String&quot;,
-              &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-                &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                    # filter in list requests.
-                    # For a discussion of this in Debian/Ubuntu:
-                    # http://serverfault.com/questions/604541/debian-packages-version-convention
-                    # For a discussion of this in Redhat/Fedora/Centos:
-                    # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-                  &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-                  &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                      # If kind is not NORMAL, then the other fields are ignored.
-                  &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-                  &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-                },
-                &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                    # format. Examples include distro or storage location for vulnerable jar.
-                    # This field can be used as a filter in list requests.
-                &quot;package&quot;: &quot;A String&quot;, # The package being described.
-              },
-              &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-                &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                    # filter in list requests.
-                    # For a discussion of this in Debian/Ubuntu:
-                    # http://serverfault.com/questions/604541/debian-packages-version-convention
-                    # For a discussion of this in Redhat/Fedora/Centos:
-                    # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-                  &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-                  &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                      # If kind is not NORMAL, then the other fields are ignored.
-                  &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-                  &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-                },
-                &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                    # format. Examples include distro or storage location for vulnerable jar.
-                    # This field can be used as a filter in list requests.
-                &quot;package&quot;: &quot;A String&quot;, # The package being described.
-              },
-            },
-          ],
-          &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-          &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-              # scale of 0-10 where 0 indicates low severity and 10 indicates high
-              # severity.
-          &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-              # node.js packages etc)
-        },
         &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-        &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-        &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-            # in the associated note.
-            # DockerImage relationship.  This image would be produced from a Dockerfile
-            # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-          &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-              # associated image basis.
-          &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-              # occurrence.
-          &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-            &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-              &quot;A String&quot;,
-            ],
-            &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-                # representation.
-                # This field can be used as a filter in list requests.
-            &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-                #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-                # Only the name of the final blob is kept.
-                # This field can be used as a filter in list requests.
-          },
-          &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-              # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-              # following the base image and [1] being the final layer.
-            { # Layer holds metadata specific to a layer of a Docker image.
-              &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-              &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-            },
-          ],
-        },
       },
     ],
-    &quot;nextPageToken&quot;: &quot;A String&quot;, # The next pagination token in the list response. It should be used as
-        # `page_token` for the following request. An empty value means no more
-        # results.
   }</pre>
 </div>
 
@@ -2703,34 +2703,217 @@
     The object takes the form of:
 
 { # `Occurrence` includes information about analysis occurrences for an image.
+  &quot;resource&quot;: { #  # 
+      # The resource for which the `Occurrence` applies.
+      # Resource is an entity that can have metadata. E.g., a Docker image.
+    &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+        # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+    &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+    &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+      &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+      &quot;value&quot;: &quot;A String&quot;, # The hash value.
+    },
+  },
+  &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+      # to fix it.
+    &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+        # the associated resource.
+      { # This message wraps a location affected by a vulnerability and its
+          # associated fix (if one is available).
+        &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+              # filter in list requests.
+              # For a discussion of this in Debian/Ubuntu:
+              # http://serverfault.com/questions/604541/debian-packages-version-convention
+              # For a discussion of this in Redhat/Fedora/Centos:
+              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                # If kind is not NORMAL, then the other fields are ignored.
+            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+          },
+          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+              # format. Examples include distro or storage location for vulnerable jar.
+              # This field can be used as a filter in list requests.
+          &quot;package&quot;: &quot;A String&quot;, # The package being described.
+        },
+        &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+              # filter in list requests.
+              # For a discussion of this in Debian/Ubuntu:
+              # http://serverfault.com/questions/604541/debian-packages-version-convention
+              # For a discussion of this in Redhat/Fedora/Centos:
+              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                # If kind is not NORMAL, then the other fields are ignored.
+            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+          },
+          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+              # format. Examples include distro or storage location for vulnerable jar.
+              # This field can be used as a filter in list requests.
+          &quot;package&quot;: &quot;A String&quot;, # The package being described.
+        },
+        &quot;severityName&quot;: &quot;A String&quot;,
+      },
+    ],
+    &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+        # available and note provider assigned severity when distro has not yet
+        # assigned a severity for this vulnerability.
+    &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+        # node.js packages etc)
+    &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+    &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+        # scale of 0-10 where 0 indicates low severity and 10 indicates high
+        # severity.
+  },
+  &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+      # Attestation can be verified using the attached signature. If the verifier
+      # trusts the public key of the signer, then verifying the signature is
+      # sufficient to establish trust.  In this circumstance, the
+      # AttestationAuthority to which this Attestation is attached is primarily
+      # useful for look-up (how to find this Attestation if you already know the
+      # Authority and artifact to be verified) and intent (which authority was this
+      # attestation intended to sign for).
+    &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+        # This message only supports `ATTACHED` signatures, where the payload that is
+        # signed is included alongside the signature itself in the same file.
+      &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+          # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+          # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+          # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+          # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+          # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+          # In gpg, the full fingerprint can be retrieved from the `fpr` field
+          # returned when calling --list-keys with --with-colons.  For example:
+          # ```
+          # gpg --with-colons --with-fingerprint --force-v4-certs \
+          #     --list-keys attester@example.com
+          # tru::1:1513631572:0:3:1:5
+          # pub:...&lt;SNIP&gt;...
+          # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+          # ```
+          # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+      &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+          # equivalent.  Since this message only supports attached signatures, the
+          # payload that was signed must be attached. While the signature format
+          # supported is dependent on the verification implementation, currently only
+          # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+          # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+          # --output=signature.gpg payload.json` will create the signature content
+          # expected in this field in `signature.gpg` for the `payload.json`
+          # attestation payload.
+      &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+          # The verifier must ensure that the provided type is one that the verifier
+          # supports, and that the attestation payload is a valid instantiation of that
+          # type (for example by validating a JSON schema).
+    },
+  },
+  &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+      # specified. This field can be used as a filter in list requests.
   &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
     &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
         # details about the build from source to completion.
-      &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-      &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-          # build providers can enter any desired additional details.
-        &quot;a_key&quot;: &quot;A String&quot;,
-      },
-      &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-      &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-      &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
       &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-        &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-            # Repository.
-          &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-          &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-          &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-          &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-          &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+        &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+            # with a path point to a unique revision of a single file or directory.
+          &quot;labels&quot;: { # Labels with user defined metadata.
+            &quot;a_key&quot;: &quot;A String&quot;,
+          },
+          &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+              # repository (e.g., GitHub).
+            &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+            &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+          },
+          &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+              # Source Repo.
+            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+              &quot;name&quot;: &quot;A String&quot;, # The alias name.
+            },
+            &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+            &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+              &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                  # winged-cargo-31) and a repo name within that project.
+                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+              },
+              &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+            },
+          },
+          &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+            &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                # the hostURI/project.
+            &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+              &quot;name&quot;: &quot;A String&quot;, # The alias name.
+            },
+            &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+          },
         },
-        &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-            # Storage.
+        &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+            # these locations, in the case where the source repository had multiple
+            # remotes or submodules. This list will not include the context specified in
+            # the context field.
+          { # A SourceContext is a reference to a tree of files. A SourceContext together
+              # with a path point to a unique revision of a single file or directory.
+            &quot;labels&quot;: { # Labels with user defined metadata.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                # repository (e.g., GitHub).
+              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+            },
+            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                # Source Repo.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                    # winged-cargo-31) and a repo name within that project.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                },
+                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+              },
+            },
+            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                  # the hostURI/project.
+              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+            },
+          },
+        ],
+        &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+            # location.
             # Google Cloud Storage.
           &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
           &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
               # Requirements]
               # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+        },
+        &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+            # Repository.
+          &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+          &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+          &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+          &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+          &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
         },
         &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
             # source integrity was maintained in the build.
@@ -2750,134 +2933,18 @@
             ],
           },
         },
-        &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-            # location.
+        &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+            # Storage.
             # Google Cloud Storage.
           &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
           &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
               # Requirements]
               # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-          &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-        },
-        &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-            # these locations, in the case where the source repository had multiple
-            # remotes or submodules. This list will not include the context specified in
-            # the context field.
-          { # A SourceContext is a reference to a tree of files. A SourceContext together
-              # with a path point to a unique revision of a single file or directory.
-            &quot;labels&quot;: { # Labels with user defined metadata.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                # repository (e.g., GitHub).
-              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-            },
-            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                  # the hostURI/project.
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-            },
-            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                # Source Repo.
-              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                    # winged-cargo-31) and a repo name within that project.
-                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                },
-              },
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-            },
-          },
-        ],
-        &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-            # with a path point to a unique revision of a single file or directory.
-          &quot;labels&quot;: { # Labels with user defined metadata.
-            &quot;a_key&quot;: &quot;A String&quot;,
-          },
-          &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-              # repository (e.g., GitHub).
-            &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-            &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-          },
-          &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-            &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                # the hostURI/project.
-            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-              &quot;name&quot;: &quot;A String&quot;, # The alias name.
-              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-            },
-            &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-            &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-          },
-          &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-              # Source Repo.
-            &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-              &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-              &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                  # winged-cargo-31) and a repo name within that project.
-                &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-              },
-            },
-            &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-              &quot;name&quot;: &quot;A String&quot;, # The alias name.
-              &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-            },
-            &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-          },
         },
       },
-      &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-      &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-      &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-          # user&#x27;s e-mail address at the time the build was initiated; this address may
-          # not represent the same end-user for all time.
-      &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-      &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-      &quot;commands&quot;: [ # Commands requested by the build.
-        { # Command describes a step performed as part of the build pipeline.
-          &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-              # packaged as a Docker container, as presented to `docker pull`.
-          &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-              # this Command as a dependency.
-          &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-              # this Command.
-          &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-            &quot;A String&quot;,
-          ],
-          &quot;env&quot;: [ # Environment variables set before running this Command.
-            &quot;A String&quot;,
-          ],
-          &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-            &quot;A String&quot;,
-          ],
-        },
-      ],
       &quot;builtArtifacts&quot;: [ # Output of the build.
         { # Artifact describes a build product.
-          &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-              # like gcr.io/projectID/imagename@sha256:123456
-          &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-              # the case of a container build, the name used to push the container image to
-              # Google Container Registry, as presented to `docker push`. Note that a
-              # single Artifact ID can have multiple names, for example if two tags are
-              # applied to one image.
-            &quot;A String&quot;,
-          ],
           &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
               # the case of a container build, the name used to push the container image to
               # Google Container Registry, as presented to `docker push`.
@@ -2888,8 +2955,51 @@
               # deserialize back into proto.
           &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
               # container.
+          &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+              # the case of a container build, the name used to push the container image to
+              # Google Container Registry, as presented to `docker push`. Note that a
+              # single Artifact ID can have multiple names, for example if two tags are
+              # applied to one image.
+            &quot;A String&quot;,
+          ],
+          &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+              # like gcr.io/projectID/imagename@sha256:123456
         },
       ],
+      &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+      &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+      &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+          # build providers can enter any desired additional details.
+        &quot;a_key&quot;: &quot;A String&quot;,
+      },
+      &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+      &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+      &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+          # user&#x27;s e-mail address at the time the build was initiated; this address may
+          # not represent the same end-user for all time.
+      &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+      &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+      &quot;commands&quot;: [ # Commands requested by the build.
+        { # Command describes a step performed as part of the build pipeline.
+          &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+              # this Command.
+          &quot;env&quot;: [ # Environment variables set before running this Command.
+            &quot;A String&quot;,
+          ],
+          &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+            &quot;A String&quot;,
+          ],
+          &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+              # this Command as a dependency.
+          &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+              # packaged as a Docker container, as presented to `docker pull`.
+          &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+            &quot;A String&quot;,
+          ],
+        },
+      ],
+      &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+      &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
     },
     &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
         # `BuildSignature` in the corresponding Result. After verifying the
@@ -2903,69 +3013,85 @@
         # provenance is marshalled to json as well to prevent incompatibilities with
         # future changes.
   },
-  &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-      # specified. This field can be used as a filter in list requests.
-  &quot;resource&quot;: { #  # 
-      # The resource for which the `Occurrence` applies.
-      # Resource is an entity that can have metadata. E.g., a Docker image.
-    &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-        # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-    &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-    &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-      &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-      &quot;value&quot;: &quot;A String&quot;, # The hash value.
+  &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+      # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+  &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+    &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+    &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+    &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+    &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+    &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+    &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+        # deployable field with the same name.
+      &quot;A String&quot;,
+    ],
+    &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+  },
+  &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+      # specific upgrade. This presence is supplied via local sources (i.e. it is
+      # present in the mirror and the running system has noticed its availability).
+    &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+    &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+        # for the resource_url. This allows efficient filtering, as well as
+        # making it easier to use the occurrence.
+        # operating system (CPE). Some distributions have additional metadata around
+        # updates, classifying them into various categories and severities.
+      &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+          # upstream operating system upgrade feed.
+      &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+          # https://cpe.mitre.org/specification/.
+      &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+      &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+        &quot;A String&quot;,
+      ],
     },
+    &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+        # For a discussion of this in Debian/Ubuntu:
+        # http://serverfault.com/questions/604541/debian-packages-version-convention
+        # For a discussion of this in Redhat/Fedora/Centos:
+        # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+      &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+      &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+      &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+          # If kind is not NORMAL, then the other fields are ignored.
+      &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+    },
+  },
+  &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+      # in the associated note.
+      # DockerImage relationship.  This image would be produced from a Dockerfile
+      # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+    &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+      &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+          #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+          # Only the name of the final blob is kept.
+          # This field can be used as a filter in list requests.
+      &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+        &quot;A String&quot;,
+      ],
+      &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+          # representation.
+          # This field can be used as a filter in list requests.
+    },
+    &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+        # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+        # following the base image and [1] being the final layer.
+      { # Layer holds metadata specific to a layer of a Docker image.
+        &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+        &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+      },
+    ],
+    &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+        # occurrence.
+    &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+        # associated image basis.
   },
   &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
       # applies. For example, https://gcr.io/project/image@sha256:foo This field
       # can be used as a filter in list requests.
-  &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-      # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-  &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-      # Attestation can be verified using the attached signature. If the verifier
-      # trusts the public key of the signer, then verifying the signature is
-      # sufficient to establish trust.  In this circumstance, the
-      # AttestationAuthority to which this Attestation is attached is primarily
-      # useful for look-up (how to find this Attestation if you already know the
-      # Authority and artifact to be verified) and intent (which authority was this
-      # attestation intended to sign for).
-    &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-        # This message only supports `ATTACHED` signatures, where the payload that is
-        # signed is included alongside the signature itself in the same file.
-      &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-          # equivalent.  Since this message only supports attached signatures, the
-          # payload that was signed must be attached. While the signature format
-          # supported is dependent on the verification implementation, currently only
-          # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-          # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-          # --output=signature.gpg payload.json` will create the signature content
-          # expected in this field in `signature.gpg` for the `payload.json`
-          # attestation payload.
-      &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-          # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-          # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-          # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-          # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-          # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-          # In gpg, the full fingerprint can be retrieved from the `fpr` field
-          # returned when calling --list-keys with --with-colons.  For example:
-          # ```
-          # gpg --with-colons --with-fingerprint --force-v4-certs \
-          #     --list-keys attester@example.com
-          # tru::1:1513631572:0:3:1:5
-          # pub:...&lt;SNIP&gt;...
-          # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-          # ```
-          # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-      &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-          # The verifier must ensure that the provided type is one that the verifier
-          # supports, and that the attestation payload is a valid instantiation of that
-          # type (for example by validating a JSON schema).
-    },
-  },
+  &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
   &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
       # a system.
-    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
     &quot;location&quot;: [ # All of the places within the filesystem versions of this package
         # have been found.
       { # An occurrence of a particular package installation found within a
@@ -2979,46 +3105,42 @@
             # For a discussion of this in Redhat/Fedora/Centos:
             # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
           &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+          &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
           &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
               # If kind is not NORMAL, then the other fields are ignored.
           &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-          &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
         },
         &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
       },
     ],
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
   },
-  &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-      # specific upgrade. This presence is supplied via local sources (i.e. it is
-      # present in the mirror and the running system has noticed its availability).
-    &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-    &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-        # For a discussion of this in Debian/Ubuntu:
-        # http://serverfault.com/questions/604541/debian-packages-version-convention
-        # For a discussion of this in Redhat/Fedora/Centos:
-        # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-      &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-      &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-          # If kind is not NORMAL, then the other fields are ignored.
-      &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-      &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-    },
-    &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-        # for the resource_url. This allows efficient filtering, as well as
-        # making it easier to use the occurrence.
-        # operating system (CPE). Some distributions have additional metadata around
-        # updates, classifying them into various categories and severities.
-      &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-          # upstream operating system upgrade feed.
-      &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-      &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-          # https://cpe.mitre.org/specification/.
-      &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-        &quot;A String&quot;,
-      ],
-    },
-  },
+  &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+      # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+      # This field can be used as a filter in list requests.
   &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+    &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+    &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+    &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+        # details to show to the user. The LocalizedMessage output only and
+        # populated by the API.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+      &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+    },
     &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
         # This field is deprecated, do not use.
         # network API call.
@@ -3035,6 +3157,12 @@
       &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
           # originally returns it. If you use the default HTTP mapping, the
           # `name` should be a resource name ending with `operations/{unique_id}`.
+      &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+          # contains progress information and common metadata such as create time.
+          # Some services might not provide such metadata.  Any method that returns a
+          # long-running operation should document the metadata type, if any.
+        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+      },
       &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
           # different programming environments, including REST APIs and RPC APIs. It is
           # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -3042,6 +3170,9 @@
           #
           # You can find out more about this error model and how to work with it in the
           # [API Design Guide](https://cloud.google.com/apis/design/errors).
+        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+            # user-facing error message should be localized and sent in the
+            # google.rpc.Status.details field, or localized by the client.
         &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
             # message types for APIs to use.
           {
@@ -3049,146 +3180,15 @@
           },
         ],
         &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-            # user-facing error message should be localized and sent in the
-            # google.rpc.Status.details field, or localized by the client.
-      },
-      &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-          # contains progress information and common metadata such as create time.
-          # Some services might not provide such metadata.  Any method that returns a
-          # long-running operation should document the metadata type, if any.
-        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
       },
       &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
           # If `true`, the operation is completed, and either `error` or `response` is
           # available.
     },
     &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-    &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-    &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-    &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-        # details to show to the user. The LocalizedMessage output only and
-        # populated by the API.
-        # different programming environments, including REST APIs and RPC APIs. It is
-        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-        # three pieces of data: error code, error message, and error details.
-        #
-        # You can find out more about this error model and how to work with it in the
-        # [API Design Guide](https://cloud.google.com/apis/design/errors).
-      &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-          # message types for APIs to use.
-        {
-          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-        },
-      ],
-      &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-      &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-          # user-facing error message should be localized and sent in the
-          # google.rpc.Status.details field, or localized by the client.
-    },
-  },
-  &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-      # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-      # This field can be used as a filter in list requests.
-  &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-    &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-    &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-    &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-        # deployable field with the same name.
-      &quot;A String&quot;,
-    ],
-    &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-    &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-    &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-    &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
   },
   &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-  &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-      # to fix it.
-    &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-        # available and note provider assigned severity when distro has not yet
-        # assigned a severity for this vulnerability.
-    &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-        # the associated resource.
-      { # This message wraps a location affected by a vulnerability and its
-          # associated fix (if one is available).
-        &quot;severityName&quot;: &quot;A String&quot;,
-        &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-              # filter in list requests.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-              # format. Examples include distro or storage location for vulnerable jar.
-              # This field can be used as a filter in list requests.
-          &quot;package&quot;: &quot;A String&quot;, # The package being described.
-        },
-        &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-          &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-              # filter in list requests.
-              # For a discussion of this in Debian/Ubuntu:
-              # http://serverfault.com/questions/604541/debian-packages-version-convention
-              # For a discussion of this in Redhat/Fedora/Centos:
-              # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-            &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-            &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                # If kind is not NORMAL, then the other fields are ignored.
-            &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-          },
-          &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-              # format. Examples include distro or storage location for vulnerable jar.
-              # This field can be used as a filter in list requests.
-          &quot;package&quot;: &quot;A String&quot;, # The package being described.
-        },
-      },
-    ],
-    &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-    &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-        # scale of 0-10 where 0 indicates low severity and 10 indicates high
-        # severity.
-    &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-        # node.js packages etc)
-  },
   &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-  &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-  &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-      # in the associated note.
-      # DockerImage relationship.  This image would be produced from a Dockerfile
-      # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-    &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-        # associated image basis.
-    &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-        # occurrence.
-    &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-      &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-        &quot;A String&quot;,
-      ],
-      &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-          # representation.
-          # This field can be used as a filter in list requests.
-      &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-          #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-          # Only the name of the final blob is kept.
-          # This field can be used as a filter in list requests.
-    },
-    &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-        # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-        # following the base image and [1] being the final layer.
-      { # Layer holds metadata specific to a layer of a Docker image.
-        &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-        &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-      },
-    ],
-  },
 }
 
   updateMask: string, The fields to update.
@@ -3201,34 +3201,217 @@
   An object of the form:
 
     { # `Occurrence` includes information about analysis occurrences for an image.
+    &quot;resource&quot;: { #  #
+        # The resource for which the `Occurrence` applies.
+        # Resource is an entity that can have metadata. E.g., a Docker image.
+      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
+          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
+      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
+      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
+        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
+        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+      },
+    },
+    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
+        # to fix it.
+      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
+          # the associated resource.
+        { # This message wraps a location affected by a vulnerability and its
+            # associated fix (if one is available).
+          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
+            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
+                # filter in list requests.
+                # For a discussion of this in Debian/Ubuntu:
+                # http://serverfault.com/questions/604541/debian-packages-version-convention
+                # For a discussion of this in Redhat/Fedora/Centos:
+                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+                  # If kind is not NORMAL, then the other fields are ignored.
+              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+            },
+            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
+                # format. Examples include distro or storage location for vulnerable jar.
+                # This field can be used as a filter in list requests.
+            &quot;package&quot;: &quot;A String&quot;, # The package being described.
+          },
+          &quot;severityName&quot;: &quot;A String&quot;,
+        },
+      ],
+      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
+          # available and note provider assigned severity when distro has not yet
+          # assigned a severity for this vulnerability.
+      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
+          # node.js packages etc)
+      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
+      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
+          # scale of 0-10 where 0 indicates low severity and 10 indicates high
+          # severity.
+    },
+    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
+        # Attestation can be verified using the attached signature. If the verifier
+        # trusts the public key of the signer, then verifying the signature is
+        # sufficient to establish trust.  In this circumstance, the
+        # AttestationAuthority to which this Attestation is attached is primarily
+        # useful for look-up (how to find this Attestation if you already know the
+        # Authority and artifact to be verified) and intent (which authority was this
+        # attestation intended to sign for).
+      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
+          # This message only supports `ATTACHED` signatures, where the payload that is
+          # signed is included alongside the signature itself in the same file.
+        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
+            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
+            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
+            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+            # In gpg, the full fingerprint can be retrieved from the `fpr` field
+            # returned when calling --list-keys with --with-colons.  For example:
+            # ```
+            # gpg --with-colons --with-fingerprint --force-v4-certs \
+            #     --list-keys attester@example.com
+            # tru::1:1513631572:0:3:1:5
+            # pub:...&lt;SNIP&gt;...
+            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+            # ```
+            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
+            # equivalent.  Since this message only supports attached signatures, the
+            # payload that was signed must be attached. While the signature format
+            # supported is dependent on the verification implementation, currently only
+            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+            # --output=signature.gpg payload.json` will create the signature content
+            # expected in this field in `signature.gpg` for the `payload.json`
+            # attestation payload.
+        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
+            # The verifier must ensure that the provided type is one that the verifier
+            # supports, and that the attestation payload is a valid instantiation of that
+            # type (for example by validating a JSON schema).
+      },
+    },
+    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
+        # specified. This field can be used as a filter in list requests.
     &quot;buildDetails&quot;: { # Message encapsulating build provenance details. # Build details for a verifiable build.
       &quot;provenance&quot;: { # Provenance of a build. Contains all information needed to verify the full # The actual provenance
           # details about the build from source to completion.
-        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
-        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
-            # build providers can enter any desired additional details.
-          &quot;a_key&quot;: &quot;A String&quot;,
-        },
-        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
-        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
-        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
         &quot;sourceProvenance&quot;: { # Source describes the location of the source used for the build. # Details of the Source input to the build.
-          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
-              # Repository.
-            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
-            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
-            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
-            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
-            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
+          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
+              # with a path point to a unique revision of a single file or directory.
+            &quot;labels&quot;: { # Labels with user defined metadata.
+              &quot;a_key&quot;: &quot;A String&quot;,
+            },
+            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                # repository (e.g., GitHub).
+              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+            },
+            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                # Source Repo.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                    # winged-cargo-31) and a repo name within that project.
+                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                },
+                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+              },
+            },
+            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                  # the hostURI/project.
+              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                &quot;name&quot;: &quot;A String&quot;, # The alias name.
+              },
+              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+            },
           },
-          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
-              # Storage.
+          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
+              # these locations, in the case where the source repository had multiple
+              # remotes or submodules. This list will not include the context specified in
+              # the context field.
+            { # A SourceContext is a reference to a tree of files. A SourceContext together
+                # with a path point to a unique revision of a single file or directory.
+              &quot;labels&quot;: { # Labels with user defined metadata.
+                &quot;a_key&quot;: &quot;A String&quot;,
+              },
+              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
+                  # repository (e.g., GitHub).
+                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
+                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
+              },
+              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
+                  # Source Repo.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
+                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
+                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
+                      # winged-cargo-31) and a repo name within that project.
+                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
+                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
+                  },
+                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
+                },
+              },
+              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
+                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
+                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
+                    # the hostURI/project.
+                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
+                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
+                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
+                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
+                },
+                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
+              },
+            },
+          ],
+          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
+              # location.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
+          },
+          &quot;repoSource&quot;: { # RepoSource describes the location of the source in a Google Cloud Source # If provided, get source from this location in a Cloud Repo.
+              # Repository.
+            &quot;tagName&quot;: &quot;A String&quot;, # Name of the tag to build.
+            &quot;branchName&quot;: &quot;A String&quot;, # Name of the branch to build.
+            &quot;projectId&quot;: &quot;A String&quot;, # ID of the project that owns the repo.
+            &quot;repoName&quot;: &quot;A String&quot;, # Name of the repo.
+            &quot;commitSha&quot;: &quot;A String&quot;, # Explicit commit SHA to build.
           },
           &quot;fileHashes&quot;: { # Hash(es) of the build source, which can be used to verify that the original
               # source integrity was maintained in the build.
@@ -3248,134 +3431,18 @@
               ],
             },
           },
-          &quot;artifactStorageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, the input binary artifacts for the build came from this
-              # location.
+          &quot;storageSource&quot;: { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
+              # Storage.
               # Google Cloud Storage.
             &quot;generation&quot;: &quot;A String&quot;, # Google Cloud Storage generation for the object.
+            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
             &quot;bucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket containing source (see [Bucket Name
                 # Requirements]
                 # (https://cloud.google.com/storage/docs/bucket-naming#requirements)).
-            &quot;object&quot;: &quot;A String&quot;, # Google Cloud Storage object containing source.
-          },
-          &quot;additionalContexts&quot;: [ # If provided, some of the source code used for the build may be found in
-              # these locations, in the case where the source repository had multiple
-              # remotes or submodules. This list will not include the context specified in
-              # the context field.
-            { # A SourceContext is a reference to a tree of files. A SourceContext together
-                # with a path point to a unique revision of a single file or directory.
-              &quot;labels&quot;: { # Labels with user defined metadata.
-                &quot;a_key&quot;: &quot;A String&quot;,
-              },
-              &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                  # repository (e.g., GitHub).
-                &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-                &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-              },
-              &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-                &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                    # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                    # the hostURI/project.
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-              },
-              &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                  # Source Repo.
-                &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                  &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                  &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                      # winged-cargo-31) and a repo name within that project.
-                    &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                    &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                  },
-                },
-                &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                  &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                  &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-                },
-                &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-              },
-            },
-          ],
-          &quot;context&quot;: { # A SourceContext is a reference to a tree of files. A SourceContext together # If provided, the source code used for the build came from this location.
-              # with a path point to a unique revision of a single file or directory.
-            &quot;labels&quot;: { # Labels with user defined metadata.
-              &quot;a_key&quot;: &quot;A String&quot;,
-            },
-            &quot;git&quot;: { # A GitSourceContext denotes a particular revision in a third party Git # A SourceContext referring to any third party Git repo (e.g., GitHub).
-                # repository (e.g., GitHub).
-              &quot;revisionId&quot;: &quot;A String&quot;, # Required. Git commit hash.
-              &quot;url&quot;: &quot;A String&quot;, # Git repository URL.
-            },
-            &quot;gerrit&quot;: { # A SourceContext referring to a Gerrit project. # A SourceContext referring to a Gerrit project.
-              &quot;gerritProject&quot;: &quot;A String&quot;, # The full project name within the host. Projects may be nested, so
-                  # &quot;project/subproject&quot; is a valid project name. The &quot;repo name&quot; is
-                  # the hostURI/project.
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;hostUri&quot;: &quot;A String&quot;, # The URI of a running Gerrit instance.
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision (commit) ID.
-            },
-            &quot;cloudRepo&quot;: { # A CloudRepoSourceContext denotes a particular revision in a Google Cloud # A SourceContext referring to a revision in a Google Cloud Source Repo.
-                # Source Repo.
-              &quot;repoId&quot;: { # A unique identifier for a Cloud Repo. # The ID of the repo.
-                &quot;uid&quot;: &quot;A String&quot;, # A server-assigned, globally unique identifier.
-                &quot;projectRepoId&quot;: { # Selects a repo using a Google Cloud Platform project ID (e.g., # A combination of a project ID and a repo name.
-                    # winged-cargo-31) and a repo name within that project.
-                  &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project.
-                  &quot;repoName&quot;: &quot;A String&quot;, # The name of the repo. Leave empty for the default repo.
-                },
-              },
-              &quot;aliasContext&quot;: { # An alias to a repo revision. # An alias, which may be a branch or tag.
-                &quot;name&quot;: &quot;A String&quot;, # The alias name.
-                &quot;kind&quot;: &quot;A String&quot;, # The alias kind.
-              },
-              &quot;revisionId&quot;: &quot;A String&quot;, # A revision ID.
-            },
           },
         },
-        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
-        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
-        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
-            # user&#x27;s e-mail address at the time the build was initiated; this address may
-            # not represent the same end-user for all time.
-        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
-        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
-        &quot;commands&quot;: [ # Commands requested by the build.
-          { # Command describes a step performed as part of the build pipeline.
-            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
-                # packaged as a Docker container, as presented to `docker pull`.
-            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
-                # this Command as a dependency.
-            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
-                # this Command.
-            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
-              &quot;A String&quot;,
-            ],
-            &quot;env&quot;: [ # Environment variables set before running this Command.
-              &quot;A String&quot;,
-            ],
-            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
-              &quot;A String&quot;,
-            ],
-          },
-        ],
         &quot;builtArtifacts&quot;: [ # Output of the build.
           { # Artifact describes a build product.
-            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
-                # like gcr.io/projectID/imagename@sha256:123456
-            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
-                # the case of a container build, the name used to push the container image to
-                # Google Container Registry, as presented to `docker push`. Note that a
-                # single Artifact ID can have multiple names, for example if two tags are
-                # applied to one image.
-              &quot;A String&quot;,
-            ],
             &quot;name&quot;: &quot;A String&quot;, # Name of the artifact. This may be the path to a binary or jar file, or in
                 # the case of a container build, the name used to push the container image to
                 # Google Container Registry, as presented to `docker push`.
@@ -3386,8 +3453,51 @@
                 # deserialize back into proto.
             &quot;checksum&quot;: &quot;A String&quot;, # Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
                 # container.
+            &quot;names&quot;: [ # Related artifact names. This may be the path to a binary or jar file, or in
+                # the case of a container build, the name used to push the container image to
+                # Google Container Registry, as presented to `docker push`. Note that a
+                # single Artifact ID can have multiple names, for example if two tags are
+                # applied to one image.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Artifact ID, if any; for container images, this will be a URL by digest
+                # like gcr.io/projectID/imagename@sha256:123456
           },
         ],
+        &quot;id&quot;: &quot;A String&quot;, # Unique identifier of the build.
+        &quot;createTime&quot;: &quot;A String&quot;, # Time at which the build was created.
+        &quot;buildOptions&quot;: { # Special options applied to this build. This is a catch-all field where
+            # build providers can enter any desired additional details.
+          &quot;a_key&quot;: &quot;A String&quot;,
+        },
+        &quot;logsBucket&quot;: &quot;A String&quot;, # Google Cloud Storage bucket where logs were written.
+        &quot;finishTime&quot;: &quot;A String&quot;, # Time at which execution of the build was finished.
+        &quot;creator&quot;: &quot;A String&quot;, # E-mail address of the user who initiated this build. Note that this was the
+            # user&#x27;s e-mail address at the time the build was initiated; this address may
+            # not represent the same end-user for all time.
+        &quot;projectId&quot;: &quot;A String&quot;, # ID of the project.
+        &quot;startTime&quot;: &quot;A String&quot;, # Time at which execution of the build was started.
+        &quot;commands&quot;: [ # Commands requested by the build.
+          { # Command describes a step performed as part of the build pipeline.
+            &quot;dir&quot;: &quot;A String&quot;, # Working directory (relative to project source root) used when running
+                # this Command.
+            &quot;env&quot;: [ # Environment variables set before running this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;args&quot;: [ # Command-line arguments used when executing this Command.
+              &quot;A String&quot;,
+            ],
+            &quot;id&quot;: &quot;A String&quot;, # Optional unique identifier for this Command, used in wait_for to reference
+                # this Command as a dependency.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the command, as presented on the command line, or if the command is
+                # packaged as a Docker container, as presented to `docker pull`.
+            &quot;waitFor&quot;: [ # The ID(s) of the Command(s) that this Command depends on.
+              &quot;A String&quot;,
+            ],
+          },
+        ],
+        &quot;triggerId&quot;: &quot;A String&quot;, # Trigger identifier if the build was triggered automatically; empty if not.
+        &quot;builderVersion&quot;: &quot;A String&quot;, # Version string of the builder at the time this build was executed.
       },
       &quot;provenanceBytes&quot;: &quot;A String&quot;, # Serialized JSON representation of the provenance, used in generating the
           # `BuildSignature` in the corresponding Result. After verifying the
@@ -3401,69 +3511,85 @@
           # provenance is marshalled to json as well to prevent incompatibilities with
           # future changes.
     },
-    &quot;kind&quot;: &quot;A String&quot;, # Output only. This explicitly denotes which of the `Occurrence` details are
-        # specified. This field can be used as a filter in list requests.
-    &quot;resource&quot;: { #  #
-        # The resource for which the `Occurrence` applies.
-        # Resource is an entity that can have metadata. E.g., a Docker image.
-      &quot;uri&quot;: &quot;A String&quot;, # The unique URI of the resource. E.g.,
-          # &quot;https://gcr.io/project/image@sha256:foo&quot; for a Docker image.
-      &quot;name&quot;: &quot;A String&quot;, # The name of the resource. E.g., the name of a Docker image - &quot;Debian&quot;.
-      &quot;contentHash&quot;: { # Container message for hash values. # The hash of the resource content. E.g., the Docker digest.
-        &quot;type&quot;: &quot;A String&quot;, # The type of hash that was performed.
-        &quot;value&quot;: &quot;A String&quot;, # The hash value.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
+        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
+    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
+      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
+      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
+      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
+      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
+      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
+      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
+          # deployable field with the same name.
+        &quot;A String&quot;,
+      ],
+      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
+    },
+    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
+        # specific upgrade. This presence is supplied via local sources (i.e. it is
+        # present in the mirror and the running system has noticed its availability).
+      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
+      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
+          # for the resource_url. This allows efficient filtering, as well as
+          # making it easier to use the occurrence.
+          # operating system (CPE). Some distributions have additional metadata around
+          # updates, classifying them into various categories and severities.
+        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
+            # upstream operating system upgrade feed.
+        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
+            # https://cpe.mitre.org/specification/.
+        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
+        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
+          &quot;A String&quot;,
+        ],
       },
+      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
+          # For a discussion of this in Debian/Ubuntu:
+          # http://serverfault.com/questions/604541/debian-packages-version-convention
+          # For a discussion of this in Redhat/Fedora/Centos:
+          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
+        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
+        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
+            # If kind is not NORMAL, then the other fields are ignored.
+        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
+      },
+    },
+    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
+        # in the associated note.
+        # DockerImage relationship.  This image would be produced from a Dockerfile
+        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
+      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
+        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
+            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
+            # Only the name of the final blob is kept.
+            # This field can be used as a filter in list requests.
+        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
+          &quot;A String&quot;,
+        ],
+        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
+            # representation.
+            # This field can be used as a filter in list requests.
+      },
+      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
+          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
+          # following the base image and [1] being the final layer.
+        { # Layer holds metadata specific to a layer of a Docker image.
+          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
+          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
+        },
+      ],
+      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
+          # occurrence.
+      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
+          # associated image basis.
     },
     &quot;resourceUrl&quot;: &quot;A String&quot;, # The unique URL of the image or the container for which the `Occurrence`
         # applies. For example, https://gcr.io/project/image@sha256:foo This field
         # can be used as a filter in list requests.
-    &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the `Occurrence` in the form
-        # &quot;projects/{project_id}/occurrences/{OCCURRENCE_ID}&quot;
-    &quot;attestation&quot;: { # Occurrence that represents a single &quot;attestation&quot;.  The authenticity of an # Describes an attestation of an artifact.
-        # Attestation can be verified using the attached signature. If the verifier
-        # trusts the public key of the signer, then verifying the signature is
-        # sufficient to establish trust.  In this circumstance, the
-        # AttestationAuthority to which this Attestation is attached is primarily
-        # useful for look-up (how to find this Attestation if you already know the
-        # Authority and artifact to be verified) and intent (which authority was this
-        # attestation intended to sign for).
-      &quot;pgpSignedAttestation&quot;: { # An attestation wrapper with a PGP-compatible signature.
-          # This message only supports `ATTACHED` signatures, where the payload that is
-          # signed is included alongside the signature itself in the same file.
-        &quot;signature&quot;: &quot;A String&quot;, # The raw content of the signature, as output by GNU Privacy Guard (GPG) or
-            # equivalent.  Since this message only supports attached signatures, the
-            # payload that was signed must be attached. While the signature format
-            # supported is dependent on the verification implementation, currently only
-            # ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
-            # `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
-            # --output=signature.gpg payload.json` will create the signature content
-            # expected in this field in `signature.gpg` for the `payload.json`
-            # attestation payload.
-        &quot;pgpKeyId&quot;: &quot;A String&quot;, # The cryptographic fingerprint of the key used to generate the signature,
-            # as output by, e.g. `gpg --list-keys`. This should be the version 4, full
-            # 160-bit fingerprint, expressed as a 40 character hexadecimal string. See
-            # https://tools.ietf.org/html/rfc4880#section-12.2 for details.
-            # Implementations may choose to acknowledge &quot;LONG&quot;, &quot;SHORT&quot;, or other
-            # abbreviated key IDs, but only the full fingerprint is guaranteed to work.
-            # In gpg, the full fingerprint can be retrieved from the `fpr` field
-            # returned when calling --list-keys with --with-colons.  For example:
-            # ```
-            # gpg --with-colons --with-fingerprint --force-v4-certs \
-            #     --list-keys attester@example.com
-            # tru::1:1513631572:0:3:1:5
-            # pub:...&lt;SNIP&gt;...
-            # fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
-            # ```
-            # Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
-        &quot;contentType&quot;: &quot;A String&quot;, # Type (for example schema) of the attestation payload that was signed.
-            # The verifier must ensure that the provided type is one that the verifier
-            # supports, and that the attestation payload is a valid instantiation of that
-            # type (for example by validating a JSON schema).
-      },
-    },
+    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
     &quot;installation&quot;: { # This represents how a particular software package may be installed on # Describes the installation of a package on the linked resource.
         # a system.
-      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
       &quot;location&quot;: [ # All of the places within the filesystem versions of this package
           # have been found.
         { # An occurrence of a particular package installation found within a
@@ -3477,46 +3603,42 @@
               # For a discussion of this in Redhat/Fedora/Centos:
               # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
             &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
+            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
             &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
                 # If kind is not NORMAL, then the other fields are ignored.
             &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-            &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
           },
           &quot;path&quot;: &quot;A String&quot;, # The path from which we gathered that this package/version is installed.
         },
       ],
+      &quot;name&quot;: &quot;A String&quot;, # Output only. The name of the installed package.
     },
-    &quot;upgrade&quot;: { # An Upgrade Occurrence represents that a specific resource_url could install a # Describes an upgrade.
-        # specific upgrade. This presence is supplied via local sources (i.e. it is
-        # present in the mirror and the running system has noticed its availability).
-      &quot;package&quot;: &quot;A String&quot;, # Required - The package this Upgrade is for.
-      &quot;parsedVersion&quot;: { # Version contains structured information about the version of the package. # Required - The version of the package in a machine + human readable form.
-          # For a discussion of this in Debian/Ubuntu:
-          # http://serverfault.com/questions/604541/debian-packages-version-convention
-          # For a discussion of this in Redhat/Fedora/Centos:
-          # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-        &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-        &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-            # If kind is not NORMAL, then the other fields are ignored.
-        &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-        &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-      },
-      &quot;distribution&quot;: { # The Upgrade Distribution represents metadata about the Upgrade for each # Metadata about the upgrade for available for the specific operating system
-          # for the resource_url. This allows efficient filtering, as well as
-          # making it easier to use the occurrence.
-          # operating system (CPE). Some distributions have additional metadata around
-          # updates, classifying them into various categories and severities.
-        &quot;classification&quot;: &quot;A String&quot;, # The operating system classification of this Upgrade, as specified by the
-            # upstream operating system upgrade feed.
-        &quot;severity&quot;: &quot;A String&quot;, # The severity as specified by the upstream operating system.
-        &quot;cpeUri&quot;: &quot;A String&quot;, # Required - The specific operating system this metadata applies to. See
-            # https://cpe.mitre.org/specification/.
-        &quot;cve&quot;: [ # The cve that would be resolved by this upgrade.
-          &quot;A String&quot;,
-        ],
-      },
-    },
+    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
+        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
+        # This field can be used as a filter in list requests.
     &quot;discovered&quot;: { # Provides information about the scan status of a discovered resource. # Describes the initial scan status for this resource.
+      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
+      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
+      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
+          # details to show to the user. The LocalizedMessage output only and
+          # populated by the API.
+          # different programming environments, including REST APIs and RPC APIs. It is
+          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+          # three pieces of data: error code, error message, and error details.
+          #
+          # You can find out more about this error model and how to work with it in the
+          # [API Design Guide](https://cloud.google.com/apis/design/errors).
+        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+            # user-facing error message should be localized and sent in the
+            # google.rpc.Status.details field, or localized by the client.
+        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
+            # message types for APIs to use.
+          {
+            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+          },
+        ],
+        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
+      },
       &quot;operation&quot;: { # This resource represents a long-running operation that is the result of a # Output only. An operation that indicates the status of the current scan.
           # This field is deprecated, do not use.
           # network API call.
@@ -3533,6 +3655,12 @@
         &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
             # originally returns it. If you use the default HTTP mapping, the
             # `name` should be a resource name ending with `operations/{unique_id}`.
+        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
+            # contains progress information and common metadata such as create time.
+            # Some services might not provide such metadata.  Any method that returns a
+            # long-running operation should document the metadata type, if any.
+          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
+        },
         &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
             # different programming environments, including REST APIs and RPC APIs. It is
             # used by [gRPC](https://github.com/grpc). Each `Status` message contains
@@ -3540,6 +3668,9 @@
             #
             # You can find out more about this error model and how to work with it in the
             # [API Design Guide](https://cloud.google.com/apis/design/errors).
+          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
+              # user-facing error message should be localized and sent in the
+              # google.rpc.Status.details field, or localized by the client.
           &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
               # message types for APIs to use.
             {
@@ -3547,146 +3678,15 @@
             },
           ],
           &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-          &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-              # user-facing error message should be localized and sent in the
-              # google.rpc.Status.details field, or localized by the client.
-        },
-        &quot;metadata&quot;: { # Service-specific metadata associated with the operation.  It typically
-            # contains progress information and common metadata such as create time.
-            # Some services might not provide such metadata.  Any method that returns a
-            # long-running operation should document the metadata type, if any.
-          &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
         },
         &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
             # If `true`, the operation is completed, and either `error` or `response` is
             # available.
       },
       &quot;analysisStatus&quot;: &quot;A String&quot;, # The status of discovery for the resource.
-      &quot;continuousAnalysis&quot;: &quot;A String&quot;, # Whether the resource is continuously analyzed.
-      &quot;cpe&quot;: &quot;A String&quot;, # The CPE of the resource being scanned.
-      &quot;analysisStatusError&quot;: { # The `Status` type defines a logical error model that is suitable for # When an error is encountered this will contain a LocalizedMessage under
-          # details to show to the user. The LocalizedMessage output only and
-          # populated by the API.
-          # different programming environments, including REST APIs and RPC APIs. It is
-          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
-          # three pieces of data: error code, error message, and error details.
-          #
-          # You can find out more about this error model and how to work with it in the
-          # [API Design Guide](https://cloud.google.com/apis/design/errors).
-        &quot;details&quot;: [ # A list of messages that carry the error details.  There is a common set of
-            # message types for APIs to use.
-          {
-            &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
-          },
-        ],
-        &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
-        &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
-            # user-facing error message should be localized and sent in the
-            # google.rpc.Status.details field, or localized by the client.
-      },
-    },
-    &quot;noteName&quot;: &quot;A String&quot;, # An analysis note associated with this image, in the form
-        # &quot;providers/{provider_id}/notes/{NOTE_ID}&quot;
-        # This field can be used as a filter in list requests.
-    &quot;deployment&quot;: { # The period during which some deployable was active in a runtime. # Describes the deployment of an artifact on a runtime.
-      &quot;deployTime&quot;: &quot;A String&quot;, # Beginning of the lifetime of this deployment.
-      &quot;address&quot;: &quot;A String&quot;, # Address of the runtime element hosting this deployment.
-      &quot;resourceUri&quot;: [ # Output only. Resource URI for the artifact being deployed taken from the
-          # deployable field with the same name.
-        &quot;A String&quot;,
-      ],
-      &quot;config&quot;: &quot;A String&quot;, # Configuration used to create this deployment.
-      &quot;userEmail&quot;: &quot;A String&quot;, # Identity of the user that triggered this deployment.
-      &quot;undeployTime&quot;: &quot;A String&quot;, # End of the lifetime of this deployment.
-      &quot;platform&quot;: &quot;A String&quot;, # Platform hosting this deployment.
     },
     &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was created.
-    &quot;vulnerabilityDetails&quot;: { # Used by Occurrence to point to where the vulnerability exists and how # Details of a security vulnerability note.
-        # to fix it.
-      &quot;effectiveSeverity&quot;: &quot;A String&quot;, # The distro assigned severity for this vulnerability when that is
-          # available and note provider assigned severity when distro has not yet
-          # assigned a severity for this vulnerability.
-      &quot;packageIssue&quot;: [ # The set of affected locations and their fixes (if available) within
-          # the associated resource.
-        { # This message wraps a location affected by a vulnerability and its
-            # associated fix (if one is available).
-          &quot;severityName&quot;: &quot;A String&quot;,
-          &quot;affectedLocation&quot;: { # The location of the vulnerability # The location of the vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-          &quot;fixedLocation&quot;: { # The location of the vulnerability # The location of the available fix for vulnerability.
-            &quot;version&quot;: { # Version contains structured information about the version of the package. # The version of the package being described. This field can be used as a
-                # filter in list requests.
-                # For a discussion of this in Debian/Ubuntu:
-                # http://serverfault.com/questions/604541/debian-packages-version-convention
-                # For a discussion of this in Redhat/Fedora/Centos:
-                # http://blog.jasonantman.com/2014/07/how-yum-and-rpm-compare-versions/
-              &quot;name&quot;: &quot;A String&quot;, # The main part of the version name.
-              &quot;kind&quot;: &quot;A String&quot;, # Distinguish between sentinel MIN/MAX versions and normal versions.
-                  # If kind is not NORMAL, then the other fields are ignored.
-              &quot;epoch&quot;: 42, # Used to correct mistakes in the version numbering scheme.
-              &quot;revision&quot;: &quot;A String&quot;, # The iteration of the package build from the above version.
-            },
-            &quot;cpeUri&quot;: &quot;A String&quot;, # The cpe_uri in [cpe format] (https://cpe.mitre.org/specification/)
-                # format. Examples include distro or storage location for vulnerable jar.
-                # This field can be used as a filter in list requests.
-            &quot;package&quot;: &quot;A String&quot;, # The package being described.
-          },
-        },
-      ],
-      &quot;severity&quot;: &quot;A String&quot;, # Output only. The note provider assigned Severity of the vulnerability.
-      &quot;cvssScore&quot;: 3.14, # Output only. The CVSS score of this vulnerability. CVSS score is on a
-          # scale of 0-10 where 0 indicates low severity and 10 indicates high
-          # severity.
-      &quot;type&quot;: &quot;A String&quot;, # The type of package; whether native or non native(ruby gems,
-          # node.js packages etc)
-    },
     &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time this `Occurrence` was last updated.
-    &quot;remediation&quot;: &quot;A String&quot;, # A description of actions that can be taken to remedy the `Note`
-    &quot;derivedImage&quot;: { # Derived describes the derived image portion (Occurrence) of the # Describes how this resource derives from the basis
-        # in the associated note.
-        # DockerImage relationship.  This image would be produced from a Dockerfile
-        # with FROM &lt;DockerImage.Basis in attached Note&gt;.
-      &quot;distance&quot;: 42, # Output only. The number of layers by which this image differs from the
-          # associated image basis.
-      &quot;baseResourceUrl&quot;: &quot;A String&quot;, # Output only. This contains the base image URL for the derived image
-          # occurrence.
-      &quot;fingerprint&quot;: { # A set of properties that uniquely identify a given Docker image. # The fingerprint of the derived image.
-        &quot;v2Blob&quot;: [ # The ordered list of v2 blobs that represent a given image.
-          &quot;A String&quot;,
-        ],
-        &quot;v1Name&quot;: &quot;A String&quot;, # The layer-id of the final layer in the Docker image&#x27;s v1
-            # representation.
-            # This field can be used as a filter in list requests.
-        &quot;v2Name&quot;: &quot;A String&quot;, # Output only. The name of the image&#x27;s v2 blobs computed via:
-            #   [bottom] := v2_blobbottom := sha256(v2_blob[N] + &quot; &quot; + v2_name[N+1])
-            # Only the name of the final blob is kept.
-            # This field can be used as a filter in list requests.
-      },
-      &quot;layerInfo&quot;: [ # This contains layer-specific metadata, if populated it has length
-          # &quot;distance&quot; and is ordered with [distance] being the layer immediately
-          # following the base image and [1] being the final layer.
-        { # Layer holds metadata specific to a layer of a Docker image.
-          &quot;directive&quot;: &quot;A String&quot;, # The recovered Dockerfile directive used to construct this layer.
-          &quot;arguments&quot;: &quot;A String&quot;, # The recovered arguments to the Dockerfile directive.
-        },
-      ],
-    },
   }</pre>
 </div>
 
@@ -3782,48 +3782,10 @@
         #
         # For a description of IAM and its features, see the
         # [IAM documentation](https://cloud.google.com/iam/docs/).
-      &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
-          # prevent simultaneous updates of a policy from overwriting each other.
-          # It is strongly suggested that systems make use of the `etag` in the
-          # read-modify-write cycle to perform policy updates in order to avoid race
-          # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-          # systems are expected to put that etag in the request to `setIamPolicy` to
-          # ensure that their change will be applied to the same version of the policy.
-          #
-          # **Important:** If you use IAM Conditions, you must include the `etag` field
-          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-          # you to overwrite a version `3` policy with a version `1` policy, and all of
-          # the conditions in the version `3` policy are lost.
-      &quot;version&quot;: 42, # Specifies the format of the policy.
-          #
-          # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-          # are rejected.
-          #
-          # Any operation that affects conditional role bindings must specify version
-          # `3`. This requirement applies to the following operations:
-          #
-          # * Getting a policy that includes a conditional role binding
-          # * Adding a conditional role binding to a policy
-          # * Changing a conditional role binding in a policy
-          # * Removing any role binding, with or without a condition, from a policy
-          #   that includes conditions
-          #
-          # **Important:** If you use IAM Conditions, you must include the `etag` field
-          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-          # you to overwrite a version `3` policy with a version `1` policy, and all of
-          # the conditions in the version `3` policy are lost.
-          #
-          # If a policy does not include any conditions, operations on that policy may
-          # specify any valid version or leave the field unset.
-          #
-          # To learn which resources support conditions in their IAM policies, see the
-          # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
       &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
           # `condition` that determines how and when the `bindings` are applied. Each
           # of the `bindings` must contain at least one member.
         { # Associates `members` with a `role`.
-          &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
-              # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
           &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
               #
               # If the condition evaluates to `true`, then this binding applies to the
@@ -3869,12 +3831,12 @@
             &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
                 # its purpose. This can be used e.g. in UIs which allow to enter the
                 # expression.
+            &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+                # syntax.
             &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
                 # reporting, e.g. a file name and a position in the file.
             &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
                 # describes the expression, e.g. when hovered over it in a UI.
-            &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
-                # syntax.
           },
           &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
               # `members` can have the following values:
@@ -3921,8 +3883,46 @@
               #
             &quot;A String&quot;,
           ],
+          &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+              # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
         },
       ],
+      &quot;version&quot;: 42, # Specifies the format of the policy.
+          #
+          # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+          # are rejected.
+          #
+          # Any operation that affects conditional role bindings must specify version
+          # `3`. This requirement applies to the following operations:
+          #
+          # * Getting a policy that includes a conditional role binding
+          # * Adding a conditional role binding to a policy
+          # * Changing a conditional role binding in a policy
+          # * Removing any role binding, with or without a condition, from a policy
+          #   that includes conditions
+          #
+          # **Important:** If you use IAM Conditions, you must include the `etag` field
+          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+          # you to overwrite a version `3` policy with a version `1` policy, and all of
+          # the conditions in the version `3` policy are lost.
+          #
+          # If a policy does not include any conditions, operations on that policy may
+          # specify any valid version or leave the field unset.
+          #
+          # To learn which resources support conditions in their IAM policies, see the
+          # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+      &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+          # prevent simultaneous updates of a policy from overwriting each other.
+          # It is strongly suggested that systems make use of the `etag` in the
+          # read-modify-write cycle to perform policy updates in order to avoid race
+          # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+          # systems are expected to put that etag in the request to `setIamPolicy` to
+          # ensure that their change will be applied to the same version of the policy.
+          #
+          # **Important:** If you use IAM Conditions, you must include the `etag` field
+          # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+          # you to overwrite a version `3` policy with a version `1` policy, and all of
+          # the conditions in the version `3` policy are lost.
     },
   }
 
@@ -4001,48 +4001,10 @@
       #
       # For a description of IAM and its features, see the
       # [IAM documentation](https://cloud.google.com/iam/docs/).
-    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
-        # prevent simultaneous updates of a policy from overwriting each other.
-        # It is strongly suggested that systems make use of the `etag` in the
-        # read-modify-write cycle to perform policy updates in order to avoid race
-        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
-        # systems are expected to put that etag in the request to `setIamPolicy` to
-        # ensure that their change will be applied to the same version of the policy.
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-    &quot;version&quot;: 42, # Specifies the format of the policy.
-        #
-        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
-        # are rejected.
-        #
-        # Any operation that affects conditional role bindings must specify version
-        # `3`. This requirement applies to the following operations:
-        #
-        # * Getting a policy that includes a conditional role binding
-        # * Adding a conditional role binding to a policy
-        # * Changing a conditional role binding in a policy
-        # * Removing any role binding, with or without a condition, from a policy
-        #   that includes conditions
-        #
-        # **Important:** If you use IAM Conditions, you must include the `etag` field
-        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
-        # you to overwrite a version `3` policy with a version `1` policy, and all of
-        # the conditions in the version `3` policy are lost.
-        #
-        # If a policy does not include any conditions, operations on that policy may
-        # specify any valid version or leave the field unset.
-        #
-        # To learn which resources support conditions in their IAM policies, see the
-        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
     &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
         # `condition` that determines how and when the `bindings` are applied. Each
         # of the `bindings` must contain at least one member.
       { # Associates `members` with a `role`.
-        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
-            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
         &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
             #
             # If the condition evaluates to `true`, then this binding applies to the
@@ -4088,12 +4050,12 @@
           &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
               # its purpose. This can be used e.g. in UIs which allow to enter the
               # expression.
+          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
+              # syntax.
           &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
               # reporting, e.g. a file name and a position in the file.
           &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
               # describes the expression, e.g. when hovered over it in a UI.
-          &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
-              # syntax.
         },
         &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
             # `members` can have the following values:
@@ -4140,8 +4102,46 @@
             #
           &quot;A String&quot;,
         ],
+        &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
+            # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
       },
     ],
+    &quot;version&quot;: 42, # Specifies the format of the policy.
+        #
+        # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
+        # are rejected.
+        #
+        # Any operation that affects conditional role bindings must specify version
+        # `3`. This requirement applies to the following operations:
+        #
+        # * Getting a policy that includes a conditional role binding
+        # * Adding a conditional role binding to a policy
+        # * Changing a conditional role binding in a policy
+        # * Removing any role binding, with or without a condition, from a policy
+        #   that includes conditions
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
+        #
+        # If a policy does not include any conditions, operations on that policy may
+        # specify any valid version or leave the field unset.
+        #
+        # To learn which resources support conditions in their IAM policies, see the
+        # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
+    &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
+        # prevent simultaneous updates of a policy from overwriting each other.
+        # It is strongly suggested that systems make use of the `etag` in the
+        # read-modify-write cycle to perform policy updates in order to avoid race
+        # conditions: An `etag` is returned in the response to `getIamPolicy`, and
+        # systems are expected to put that etag in the request to `setIamPolicy` to
+        # ensure that their change will be applied to the same version of the policy.
+        #
+        # **Important:** If you use IAM Conditions, you must include the `etag` field
+        # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
+        # you to overwrite a version `3` policy with a version `1` policy, and all of
+        # the conditions in the version `3` policy are lost.
   }</pre>
 </div>