apiVersion: "catalog.confighub.com/v1alpha1"
kind: "BaseVariantRecord"
metadata:
  name: "grafana-alloy-1-12-1-default"
  labels:
    sourceType: "helm"
    component: "grafana/alloy"
    sourceVersion: "1.12.1"
    base: "default"
spec:
  source:
    type: "helm"
    name: "grafana/alloy"
    version: "1.12.1"
    record: "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
    packageOciRef: "oci://europe-west1-docker.pkg.dev/nth-fort-499605-q5/helm-expt/grafana-alloy:1.12.1@sha256:ccce74fea2d96aa240eeb109cc8e4d15d8636c16fea3e3eddc0f1571937505f3"
    selection:
      name: "default"
      kind: "catalog-preset"
      provider: "Config Workshop"
      record: "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
  baseVariant:
    name: "default"
    revision: "r001"
    digest: "dc0d3bcc5f06a38dd9048d33274e1b273f4357e3013e1e29340906b6d27fe8f9"
    digestRole: "helm-variant-revision"
    digestRecord: "recipes/grafana/alloy/1.12.1/revisions/default/r001/variant-revision.yaml"
  configuration:
    format: "kubernetes-yaml"
    objects: "recipes/grafana/alloy/1.12.1/revisions/default/r001/rendered/release-objects.yaml"
    inventory: "recipes/grafana/alloy/1.12.1/revisions/default/r001/rendered/object-inventory.yaml"
    objectCount: 7
    digest: "e3b30c75c9a0bc3241f42a8dde5d4b05371091c319ab5712fe30685234d17549"
    digestRole: "canonical-object-set"
    digestRecord: "recipes/grafana/alloy/1.12.1/revisions/default/r001/variant-revision.yaml"
  processing:
    sourceIntent:
      status: "recorded"
      record: "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
    materialization:
      method: "helm-render"
      status: "captured"
      outputDigest: "e3b30c75c9a0bc3241f42a8dde5d4b05371091c319ab5712fe30685234d17549"
      record: "recipes/grafana/alloy/1.12.1/revisions/default/r001/variant-revision.yaml"
    flattening:
      status: "decided"
      verdict: "flatten-with-routes"
      action: "retain-exact-objects-with-routes"
      scope: "grafana/alloy@1.12.1/default; recheck after source, lifecycle-sensitive variant, destination, or delivery-runtime changes"
      record: "recipes/grafana/alloy/1.12.1/publication/flattening-safety-verdict.yaml"
    boundaries:
      - "Helm rendered the pinned chart and values into the exact objects retained by this base."
  assessment:
    stages:
      -
        id: "inspection"
        question: "What do I have?"
        answer: "Inspect the helm source, choices, locks, and any existing output before selecting a destination."
        requiredInputs:
          - "The chart and values, a rendered object set, or a package that contains them"
        catalogMatchRequired: false
        sourceIntentRequired: false
        destinationAccessRequired: false
        deploymentRequired: false
        evidenceState: "completed"
        resultState: "available"
        records:
          - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
          - "recipes/grafana/alloy/1.12.1/revisions/default/r001/rendered/release-objects.yaml"
          - "recipes/grafana/alloy/1.12.1/revisions/default/r001/rendered/object-inventory.yaml"
        nextAction: "Inspect or compare the source and exact files before choosing a destination."
      -
        id: "materialization"
        question: "What will it produce?"
        answer: "Run the recorded Helm render step to produce the exact Kubernetes objects for this configuration."
        requiredInputs:
          - "The pinned chart, version, values, namespace, release name, and render capabilities"
        catalogMatchRequired: false
        sourceIntentRequired: true
        destinationAccessRequired: false
        deploymentRequired: false
        evidenceState: "completed"
        resultState: "pass"
        records:
          - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
          - "recipes/grafana/alloy/1.12.1/revisions/default/r001/variant-revision.yaml"
        nextAction: "Review the exact object set and its digest."
      -
        id: "destination"
        question: "Can this destination accept it?"
        answer: "No destination answer is available yet because target facts or lifecycle handling are incomplete."
        requiredInputs:
          - "The exact candidate configuration"
          - "The selected destination and its current APIs, prerequisites, policies, credentials, controllers, and hardware facts"
        catalogMatchRequired: false
        sourceIntentRequired: true
        destinationAccessRequired: true
        deploymentRequired: false
        evidenceState: "pending"
        resultState: "pending"
        records:
          - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
        nextAction: "Choose the destination, record its facts, and resolve the required lifecycle work before apply."
      -
        id: "post-deployment"
        question: "Did it work?"
        answer: "No post-deployment result is recorded for this exact configuration. Publication, upload, or rendering is not proof that it ran correctly."
        requiredInputs:
          - "The exact delivered revision and destination"
          - "Live controller, resource, health, runtime, drift, and rollback observations required by the claim"
        catalogMatchRequired: false
        sourceIntentRequired: true
        destinationAccessRequired: true
        deploymentRequired: true
        evidenceState: "not-run"
        resultState: "not-run"
        records:
          []
        nextAction: "Deliver the exact revision, then record controller, resource, health, runtime, drift, and rollback results separately."
  inputs:
    fixedAtBuildTime:
      - "chart=grafana/alloy"
      - "version=1.12.1"
      - "base=default"
      - "valuesProfile=recipes/grafana/alloy/1.12.1/effective-values.yaml"
      - "namespace=alloy"
      - "releaseName=alloy"
      - "capabilityProfile={\"apiVersions\":[],\"kubeVersion\":\"1.30.0\"}"
    installTime:
      []
    installTimeStatus: "not-yet-declared"
  lifecycle:
    requirements:
      status: "gap"
      items:
        -
          id: "crd-ordering"
          origin: "base"
          type: "lifecycle-action"
          detail: "CRD ordering declaration for the 1 definition(s) this base renders."
      records:
        - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
        - "recipes/grafana/alloy/1.12.1/publication/flattening-safety-verdict.yaml"
    routeIntent:
      status: "gap"
      routes:
        -
          id: "crd-ordering"
          requirementRefs:
            - "crd-ordering"
          phase: "apply"
          proposedActor: "selected destination actor"
          proposedMechanism: "CRD ordering declaration for the 1 definition(s) this base renders."
          automatic: false
          status: "requires-destination-resolution"
          sourceStatus: "recorded-not-run"
          supportedRuntimes:
            []
          checks:
            []
          evidence:
            - "recipes/grafana/alloy/1.12.1/publication/flattening-safety-verdict.yaml"
      records:
        - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
        - "recipes/grafana/alloy/1.12.1/publication/flattening-safety-verdict.yaml"
    targetFacts:
      status: "gap"
      declared:
        {}
      requirementRefs:
        []
      records:
        - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
    resolution:
      status: "gap"
      rule: "Re-resolve after a lifecycle-sensitive variant change, destination assignment, or delivery-runtime change; bind the result to the exact configuration digest."
      records:
        []
  ownership:
    status: "partly-declared"
    sourceControlled:
      - "Fields produced from the recorded chart values and render context"
    variantControlled:
      - "Post-render object fields recorded in ConfigHub after upload"
    targetSupplied:
      []
    deliveryProtected:
      []
    records:
      - "data/helm-render-intents/intents/grafana-alloy-1-12-1-default.yaml"
    rule: "Re-evaluate ownership when the source, variant, destination, or delivery behavior changes; overlapping source and variant edits require review."
  delivery:
    literalConfigOci:
      status: "published-with-receipt"
      observedReference: "oci://europe-west1-docker.pkg.dev/nth-fort-499605-q5/helm-expt/bundles/catalog-grafana-alloy-1-12-1-default:latest@sha256:0c484cee50c5b8cc8a3ac428adfc7471dc812601a1224468b075b5afd9d6cb1a"
      manifestDigest: "sha256:0c484cee50c5b8cc8a3ac428adfc7471dc812601a1224468b075b5afd9d6cb1a"
      layerDigest: "sha256:1a60b91cc0bc8dbb6ffa68eb0989877eb286459f3881285c9e12a8b1e14ef80d"
      objectSetSha256: "sha256:e3b30c75c9a0bc3241f42a8dde5d4b05371091c319ab5712fe30685234d17549"
      receipt: "data/certified-bundles/receipts/catalog/alloy-1.12.1-default/receipt.yaml"
      receiptSha256: "sha256:d35a36f8a9cf048a989065366c7b01567ee870aafe876c335a43a31ce12a458f"
      publicationReceipt: "runs/certified-bundles/catalog-grafana-alloy-1-12-1-default/publication-receipt.yaml"
      publicationReceiptSha256: "sha256:c9fa56786a20dd8cda38ce6886e67b7801dcc1c08da9705a75d2c2baea85c983"
      routes:
        -
          path: "data/certified-bundles/routes/catalog/grafana-alloy-1.12.1-default/crd-ordering.yaml"
          sha256: "sha256:fba61c34cd87afcf1b7d50488ee14787ef62f47d49102f54c7caf74ddb362ae8"
          role: "route: crd-ordering"
      note: "The receipt and publication receipt declare these route files; this binding does not prove a remote pullback or route execution."
    configHubReleaseOci:
      status: "not-recorded-for-this-base"
      note: "No current ConfigHub Space release OCI receipt is recorded for this exact base."
    argoCd: "not-recorded-for-this-base"
    flux: "not-recorded-for-this-base"
    direct: "not-recorded-for-this-base"
    historicalGitopsOciStatus: "todo"
  policy:
    profile: "catalog-standard"
    productionAdds:
      - "workflow-approval"
  evidence:
    renderParity: "yes"
    confighubScanOps: "todo"
    localKind: "todo"
    lifecycleObserved: "todo"
    gitopsOciLive: "todo"
    liveDualParity: "todo"
    twoClusterKind: "todo"
    variantPromotion: "missing-confighub-proof"
  operations:
    resourceClass: "not-yet-classified"
    ownerClass: "not-yet-classified"
    changeCadence: "not-yet-classified"
status:
  level: "available"
  claim: "The Helm source record, committed rendered objects, revision digest, routes, target facts, and proof-lane statuses are indexed here."
  limits:
    - "This record does not claim that the base has been uploaded to a live ConfigHub Space."
    - "The inputs still required at installation are not yet fully recorded for every Helm configuration."
    - "A multi-preset installer package OCI is not the same as a single literal configuration OCI."
