apiVersion: helm-expt.confighub.com/v1alpha1
kind: LiveHelmConfigHubParityReceipt
metadata:
  name: prometheus-community-kube-state-metrics-7.4.0-cluster-metrics-readonly-live-parity-20260605
spec:
  chart: prometheus-community/kube-state-metrics
  version: 7.4.0
  base: cluster-metrics-readonly
  result: pass
  observedAt: '2026-06-13T00:31:00Z'
  package:
    path: packages/prometheus-community/kube-state-metrics/7.4.0
  recipe:
    path: recipes/prometheus-community/kube-state-metrics/7.4.0
  variantRevision: recipes/prometheus-community/kube-state-metrics/7.4.0/revisions/cluster-metrics-readonly/r001/variant-revision.yaml
  targetProfile:
    name: none
    result: pass
    resources: []
  gitOpsCanonicalizationProfile:
    name: none
    result: pass
    changes: []
  run:
    rig: helm-expt-parity-kube-state-metrics-1781310660
    kubeContext: kind-helm-expt-parity-kube-state-metrics-1781310660
    namespace: default
    legNamespaces:
      regularHelm: default-helm
      configHubKubectlApply: default-apply
      configHubOciArgo: default-oci
    clusterLifecycle: cleaned-up
    cleanup:
      command: cub lk down --name helm-expt-parity-kube-state-metrics-1781310660 --force
      result: pass
      detail: 'Deleting kind cluster "helm-expt-parity-kube-state-metrics-1781310660"...

        Deleting cluster "helm-expt-parity-kube-state-metrics-1781310660" ...

        Deleted nodes: ["helm-expt-parity-kube-state-metrics-1781310660-control-plane"]

        Deleting Space "helm-expt-parity-kube-state-metrics-1781310660-cluster" (recursive:
        cascades to Unit, Target, Worker)...


        Done.'
  legs:
    regularHelm:
      result: pass
      command: helm upgrade --install kube-state-metrics kube-state-metrics --repo
        https://prometheus-community.github.io/helm-charts --version 7.4.0 --namespace
        default-helm --create-namespace --values $HOME/code/helm-expt/runs/live-helm-confighub-compare/prometheus-community-kube-state-metrics-cluster-metrics-readonly/regular-helm-values.yaml
        --wait --timeout 600s
      manifestSHA256: b892be5f9969f39e3a7a0fadacde77cf3b9a86ca16485d5712cc2a476bda14bc
      objectCount: 5
      liveHelmManifestSHA256: 2e31cce2024524a5cd986f580a5d849d7e3923b81ab1ecf9265fe2efdd0a05f9
      liveHelmManifestObjectCount: 5
      namespace: default-helm
      runtime:
        result: pass
        workloads: deployment.apps/kube-state-metrics   1/1   1     1     16s
        pods: kube-state-metrics-7d4775494-rf2q2   1/1   Running   0     16s
        notReady: []
        ignoredJobPods: []
      stderr: ''
      getManifestError: ''
    configHubKubectlApply:
      result: pass
      renderCommand: cub installer setup --pull $HOME/code/helm-expt/packages/prometheus-community/kube-state-metrics/7.4.0
        --base cluster-metrics-readonly --work-dir /tmp/helm-expt-live-parity-helm-expt-parity-kube-state-metrics-1781310660-kube-state-metrics
        --non-interactive --namespace default-apply
      applyMode: namespace-first kubectl apply; separated secrets staged when present
      manifestSHA256: 8971c186cbf95039d6a49e977a35a655a1db4bc1b9583bf3d0ab142fd5b0d3d4
      objectCount: 6
      namespace: default-apply
      manifestNamespaces:
      - default
      - default-apply
      runtimeNamespaces: &id001
      - default
      runtime:
        result: pass
        namespaces: *id001
        workloads: '# default

          deployment.apps/kube-state-metrics   1/1   1     1     20s'
        pods: '# default

          kube-state-metrics-7d4775494-7hwkx   1/1   Running   0     20s'
        notReady: []
      cleanupBeforeOci:
        namespaces:
        - default-apply
        retainedNamespaces: []
        clusterScopedResources:
          result: pass
          objectCount: 2
          manifest: cluster-scoped-apply-cleanup.yaml
          detail: 'clusterrole.rbac.authorization.k8s.io "kube-state-metrics" deleted

            clusterrolebinding.rbac.authorization.k8s.io "kube-state-metrics" deleted'
        protectedNamespaceResources:
          result: pass
          namespaces:
          - default
          objectCount: 3
          manifest: protected-namespace-apply-cleanup.yaml
          detail: 'deployment.apps "kube-state-metrics" deleted from default namespace

            service "kube-state-metrics" deleted from default namespace

            serviceaccount "kube-state-metrics" deleted from default namespace'
        reason: isolate the OCI/Argo leg from direct-apply workloads in single-cluster
          parity rigs
    configHubOciArgo:
      result: pass
      workloadSpace: helm-expt-parity-kube-state-metrics-1781310660-kube-state-metrics
      controller: Argo CD OCI
      app: kube-state-metrics-parity
      manifestSHA256: 8363796cb1200aa2b5616f39b027eaef86a4294e54cb74c5f0291a321082e471
      objectCount: 6
      namespace: default-oci
      manifestNamespaces:
      - default
      - default-oci
      runtimeNamespaces: &id002
      - default
      ociRevision: sha256:cdb8f960c8dfc8f5154bf29735e89b7c9bf794d4cec2c40bfabf107de8289ccd
      sync: Synced
      health: Healthy
      separatedSecrets: []
      argoStatus:
        result: recorded
        sync:
          comparedTo:
            destination:
              namespace: default-oci
              server: https://kubernetes.default.svc
            source:
              path: ./helm-expt-parity-kube-state-metrics-1781310660-kube-state-metrics
              repoURL: oci://oci.hub.confighub.com:443/target/helm-expt-parity-kube-state-metrics-1781310660-cluster/oci
              targetRevision: latest
          revision: sha256:cdb8f960c8dfc8f5154bf29735e89b7c9bf794d4cec2c40bfabf107de8289ccd
          status: Synced
        health:
          lastTransitionTime: '2026-06-13T00:34:04Z'
          status: Healthy
        operationState:
          phase: Succeeded
          message: successfully synced (all tasks run)
        conditions: []
        resources:
        - group: ''
          kind: Namespace
          namespace: ''
          name: default-oci
          status: Synced
          health: ''
          hook: false
        - group: ''
          kind: Service
          namespace: default
          name: kube-state-metrics
          status: Synced
          health: ''
          hook: false
        - group: ''
          kind: ServiceAccount
          namespace: default
          name: kube-state-metrics
          status: Synced
          health: ''
          hook: false
        - group: apps
          kind: Deployment
          namespace: default
          name: kube-state-metrics
          status: Synced
          health: ''
          hook: false
        - group: rbac.authorization.k8s.io
          kind: ClusterRole
          namespace: ''
          name: kube-state-metrics
          status: Synced
          health: ''
          hook: false
        - group: rbac.authorization.k8s.io
          kind: ClusterRoleBinding
          namespace: ''
          name: kube-state-metrics
          status: Synced
          health: ''
          hook: false
      runtime:
        result: pass
        namespaces: *id002
        workloads: '# default

          deployment.apps/kube-state-metrics   1/1   1     1     18s'
        pods: '# default

          kube-state-metrics-7d4775494-vllvx   1/1   Running   0     18s'
        notReady: []
  semanticComparison:
    allowedExtraConfigHubObjects:
    - v1|Namespace||default
    semanticNormalizations: &id003
    - prune-null-fields
    helmVsConfigHubKubectlApply:
      result: pass
      helmObjectCount: 5
      configHubObjectCount: 6
      missingFromConfigHub: []
      extraInConfigHub:
      - v1|Namespace||default
      semanticDiffs: []
      semanticNormalizations: *id003
      comparisonSHA256: c90ccd49553545d990093d205a77069ff9881faac63f0338fd802eefca910e4f
    helmVsConfigHubOciArgo:
      result: pass
      helmObjectCount: 5
      configHubObjectCount: 6
      missingFromConfigHub: []
      extraInConfigHub:
      - v1|Namespace||default
      semanticDiffs: []
      semanticNormalizations:
      - prune-null-fields
      comparisonSHA256: c90ccd49553545d990093d205a77069ff9881faac63f0338fd802eefca910e4f
  checks:
  - name: live-lane-lock
    result: pass
    detail: acquired $HOME/.confighub/locks/helm-expt-live-parity.lock
  - name: cub-lk-up
    result: pass
    detail: "Creating kind cluster \"helm-expt-parity-kube-state-metrics-1781310660\"\
      \ (kubeconfig: $HOME/.confighub/lk/helm-expt-parity-kube-state-metrics-1781310660.kubeconfig)...\n\
      Creating cluster \"helm-expt-parity-kube-state-metrics-1781310660\" ...\n \u2022\
      \ Ensuring node image (kindest/node:v1.35.0) \U0001F5BC  ...\n \u2713 Ensuring\
      \ node image (kindest/node:v1.35.0) \U0001F5BC\n \u2022 Preparing nodes \U0001F4E6\
      \   ...\n \u2713 Preparing nodes \U0001F4E6 \n \u2022 Writing configuration\
      \ \U0001F4DC  ...\n \u2713 Writing configuration \U0001F4DC\n \u2022 Starting\
      \ control-plane \U0001F579\uFE0F  ...\n \u2713 Starting control-plane \U0001F579\
      \uFE0F\n \u2022 Installing CNI \U0001F50C  ...\n \u2713 Installing CNI \U0001F50C\
      \n \u2022 Installing StorageClass \U0001F4BE  ...\n \u2713 Installing StorageClass\
      \ \U0001F4BE\nSet kubectl context to \"kind-helm-expt-parity-kube-state-metrics-1781310660\"\
      \nYou can now use your cluster with:\n\nkubectl cluster-info --context kind-helm-expt-parity-kube-state-metrics-1781310660\
      \ --kubeconfig $HOME/.confighub/lk/helm-expt-parity-kube-state-metrics-1781310660.kubeconfig\n\
      \nHave a question, bug, or feature request? Let us know! https://kind.sigs.k8s.io/"
  - name: target-facts-regular-helm
    result: pass
    detail: secrets=0 crds=0
  - name: regular-helm-live
    result: pass
    detail: 'Release "kube-state-metrics" does not exist. Installing it now.

      NAME: kube-state-metrics

      LAST DEPLOYED: Sat Jun 13 01:32:27 2026

      NAMESPACE: default-helm

      STATUS: deployed

      REVISION: 1

      DESCRIPTION: Install complete

      TEST SUITE: None

      NOTES:

      kube-state-metrics is a simple service that listens to the Kubernetes API server
      and generates metrics about the state of the objects.

      The exposed metrics can be found here:

      https://github.com/kubernetes/kube-state-metrics/blob/master/docs/README.md#exposed-metrics


      The metrics are exported on the HTTP endpoint /metrics on the listening port.

      In your case, kube-state-metrics.default-helm.svc.cluster.local:8080/metrics


      They are served either as plaintext or protobuf depending on the Accept header.

      They are designed to be consumed either by Prometheus itself or by a scraper
      that is compatible with scraping a Prometheus client endpoint.'
  - name: target-facts-confighub-apply
    result: pass
    detail: secrets=0 crds=0
  - name: confighub-kubectl-apply-live
    result: pass
    detail: '# default

      deployment.apps/kube-state-metrics   1/1   1     1     20s'
  - name: confighub-kubectl-apply-cluster-cleanup
    result: pass
    detail: objects=2
  - name: confighub-kubectl-apply-protected-cleanup
    result: pass
    detail: objects=3 namespaces=default
  - name: target-facts-confighub-oci
    result: pass
    detail: secrets=0 crds=0
  - name: confighub-oci-argo-live
    result: pass
    detail: sync=Synced health=Healthy after 30s
  - name: semantic-object-parity
    result: pass
    detail: apply=pass argo=pass applyDiffs=0 argoDiffs=0
  targetFacts:
    regularHelm:
      result: pass
      stagedSecrets: []
      stagedCRDs: []
    configHubKubectlApply:
      result: pass
      stagedSecrets: []
      stagedCRDs: []
    configHubOciArgo:
      result: pass
      stagedSecrets: []
      stagedCRDs: []
  operatingPolicy:
    regularHelm:
      result: pass
      operation: none
    configHubKubectlApply:
      result: pass
      operation: none
      namespace: default-apply
    configHubOciArgo:
      result: pass
      operation: none
      namespace: default-oci
