Hephaisto demo Docs Site GitHub
DEMO DATA — replayed from cassette c7, recorded against a real k3s cluster. Investigated by gpt-oss:120b on 2026-09-01 against a tool trace from gemini-3.7-flash, and graded Correct against the answer key. Timestamps are the original recording times.

← all ten investigations

ConfigError on c7-configerror-7cd96c86f9-4dlvl (hephaisto-chaos)

! Escalated Warning ConfigError cassette c7
target
hephaisto-chaos/Pod/c7-configerror-7cd96c86f9-4dlvl
workload
hephaisto-chaos/Pod/c7-configerror-7cd96c86f9-4dlvl
node
0.0.0.0:8080
opened
2026-08-29 13:51:37
investigated
45s

expected root cause — the answer key

A referenced Secret does not exist (c7-database-credentials), so the kubelet cannot construct the container environment and reports CreateContainerConfigError. This is NOT an image pull problem.

This is never shown to the model. It is what the grader compared the diagnosis against, and it is on this page because a demo that showed only the answer would be asking you to take the grading on trust.

signals 2

reasonmessagefirst seenn
KubeContainerWaitingConfigError Reason CreateContainerConfigError. Usually an env var referencing a Secret or ConfigMap key that does not exist. The kubelet names the missing object in its Event ("secret ... not found") -- that name is the entire diagnosis and it is available NOWHERE else. Do not confuse with ImagePullBackOff. 2026-08-29 13:51:26 1
KubePodNotReady Pod hephaisto-chaos/c7-configerror-7cd96c86f9-4dlvl is Pending or Unknown. If it is Pending with no container statuses at all, the reason exists ONLY as a FailedScheduling Event -- no metric carries it. Query the events stream in Loki, not Prometheus. 2026-08-29 13:52:26 1

state transitions

  1. 2026-08-29 13:51:37 Detected DEMO DATA — replayed from cassette c7, recorded against a real k3s cluster. Investigated by gpt-oss:120b on 2026-09-01 against a tool trace from gemini-3.7-flash, and graded Correct against the answer key. Timestamps are the original recording times.
  2. 2026-09-01 21:59:06 Detected → Investigating Investigating with gpt-oss:120b.
  3. 2026-09-01 21:59:51 Investigating → Escalated Diagnosed, and a plan was proposed. Nothing executes in Observe mode.

investigation

model
gpt-oss:120b
steps
5
tool calls
4
tokens
46.3k in / 1.4k out
cost
$0.0016
confidence
0.95
ended
Concluded

trace

  1. 1 llm model turn internal 13.0s · 7.8k tok · $0.0002

    model output — its reasoning, and the tools it asked for

    -> calls describe_pod
  2. 2 tool describe_pod kubernetes 0ms · 4.5 KiB ~ truncated

    arguments

    {"name":"c7-configerror-7cd96c86f9-4dlvl","namespace":"hephaisto-chaos"}

    result digest — what the model actually saw

    [step 01a05efb-dee4-7f0a-bd5c-b4e4bc8e6eec] describe_pod
    log digest: 159 lines, 4614 bytes
    
    -- repeated patterns --
    x6 [#96 .. #139]     observedGeneration: 1
    x5 [#40 .. #150]         cpu: 100m
    x5 [#95 .. #115]   - lastTransitionTime: "2026-08-29T13:50:12Z"
    x3 [#44 .. #151]         memory: 16Mi
    x3 [#97 .. #117]     status: "True"
    x2 [#1 .. #87] apiVersion: v1
    x2 [#20 .. #21]     uid: 0a9f23f3-25ba-481d-8d4c-1f71b95f7607
    x2 [#37 .. #123]     name: app
    x2 [#38 .. #145]     resources:
    x2 [#39 .. #146]       limits:
    
    -- last 40 lines --
      - image: busybox:1.37
        imageID: ""
        lastState: {}
        name: app
        ready: false
        restartCount: 0
        started: false
        state:
          waiting:
            message: secret "c7-database-credentials" not found
            reason: CreateContainerConfigError
        volumeMounts:
        - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
          name: kube-api-access-z4lvn
          readOnly: true
          recursiveReadOnly: Disabled
      hostIP: 0.0.0.0
      hostIPs:
      - ip: 0.0.0.0
      observedGeneration: 1
      phase: Pending
      podIP: 0.0.0.0
      podIPs:
      - ip: 0.0.0.0
      qosClass: Burstable
      resources:
        limits:
          cpu: 100m
          memory: 64Mi
        requests:
          cpu: 10m
          memory: 16Mi
      startTime: "2026-08-29T13:50:12Z"
    
    events for this pod:
    type     reason     count  objects                              first  last  message
    -------  ---------  -----  -----------------------------------  -----  ----  ---------------------------------------------------------------------------------------------
    Normal   Pulled     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Container image "busybox:1.37" already present on machine and can be accessed by the pod
    Warning  Failed     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Error: secret "c7-database-credentials" not found
    Normal   Scheduled  1      Pod/c7-configerror-7cd96c86f9-4dlvl  5m     5m    Successfully assigned hephaisto-chaos/c7-configerror-7cd96c86f9-4dlvl to lima-rancher-desktop
    
    [truncated: 109 of 159 lines omitted]
    
    raw result — the untruncated tool output (4.5 KiB)
    apiVersion: v1
    kind: Pod
    metadata:
      creationTimestamp: "2026-08-29T13:50:12Z"
      generateName: c7-configerror-7cd96c86f9-
      generation: 1
      labels:
        app.kubernetes.io/name: c7-configerror
        hephaisto.chaos/fault: configerror
        hephaisto.chaos/scenario: c7
        pod-template-hash: 7cd96c86f9
      name: c7-configerror-7cd96c86f9-4dlvl
      namespace: hephaisto-chaos
      ownerReferences:
      - apiVersion: apps/v1
        kind: ReplicaSet
        blockOwnerDeletion: true
        controller: true
        name: c7-configerror-7cd96c86f9
        uid: 0a9f23f3-25ba-481d-8d4c-1f71b95f7607
      uid: f0d96e17-8479-4d02-b576-c33cc1c9a672
    spec:
      containers:
      - command:
        - /bin/sh
        - -c
        - echo started; sleep 86400
        env:
        - name: DATABASE_URL
          valueFrom:
            secretKeyRef:
              key: connection-string
              name: c7-database-credentials
              optional: false
        image: busybox:1.37
        imagePullPolicy: IfNotPresent
        name: app
        resources:
          limits:
            cpu: 100m
            memory: 64Mi
          requests:
            cpu: 10m
            memory: 16Mi
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
          name: kube-api-access-z4lvn
          readOnly: true
      dnsPolicy: ClusterFirst
      enableServiceLinks: true
      nodeName: lima-rancher-desktop
      preemptionPolicy: PreemptLowerPriority
      priority: 0
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: default
      serviceAccountName: default
      terminationGracePeriodSeconds: 1
      tolerations:
      - effect: NoExecute
        key: node.kubernetes.io/not-ready
        operator: Exists
        tolerationSeconds: 300
      - effect: NoExecute
        key: node.kubernetes.io/unreachable
        operator: Exists
        tolerationSeconds: 300
      volumes:
      - name: kube-api-access-z4lvn
        projected:
          defaultMode: 420
          sources:
          - serviceAccountToken:
              expirationSeconds: 3607
              path: token
          - configMap:
              items:
              - key: ca.crt
                path: ca.crt
              name: kube-root-ca.crt
          - downwardAPI:
              items:
              - fieldRef:
                  apiVersion: v1
                  fieldPath: metadata.namespace
                path: namespace
    status:
      allocatedResources:
        cpu: 10m
        memory: 16Mi
      conditions:
      - lastTransitionTime: "2026-08-29T13:50:12Z"
        observedGeneration: 1
        status: "True"
        type: PodReadyToStartContainers
      - lastTransitionTime: "2026-08-29T13:50:12Z"
        observedGeneration: 1
        status: "True"
        type: Initialized
      - lastTransitionTime: "2026-08-29T13:50:12Z"
        message: 'containers with unready status: [app]'
        observedGeneration: 1
        reason: ContainersNotReady
        status: "False"
        type: Ready
      - lastTransitionTime: "2026-08-29T13:50:12Z"
        message: 'containers with unready status: [app]'
        observedGeneration: 1
        reason: ContainersNotReady
        status: "False"
        type: ContainersReady
      - lastTransitionTime: "2026-08-29T13:50:12Z"
        observedGeneration: 1
        status: "True"
        type: PodScheduled
      containerStatuses:
      - image: busybox:1.37
        imageID: ""
        lastState: {}
        name: app
        ready: false
        restartCount: 0
        started: false
        state:
          waiting:
            message: secret "c7-database-credentials" not found
            reason: CreateContainerConfigError
        volumeMounts:
        - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
          name: kube-api-access-z4lvn
          readOnly: true
          recursiveReadOnly: Disabled
      hostIP: 0.0.0.0
      hostIPs:
      - ip: 0.0.0.0
      observedGeneration: 1
      phase: Pending
      podIP: 0.0.0.0
      podIPs:
      - ip: 0.0.0.0
      qosClass: Burstable
      resources:
        limits:
          cpu: 100m
          memory: 64Mi
        requests:
          cpu: 10m
          memory: 16Mi
      startTime: "2026-08-29T13:50:12Z"
    
    events for this pod:
    type     reason     count  objects                              first  last  message
    -------  ---------  -----  -----------------------------------  -----  ----  ---------------------------------------------------------------------------------------------
    Normal   Pulled     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Container image "busybox:1.37" already present on machine and can be accessed by the pod
    Warning  Failed     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Error: secret "c7-database-credentials" not found
    Normal   Scheduled  1      Pod/c7-configerror-7cd96c86f9-4dlvl  5m     5m    Successfully assigned hephaisto-chaos/c7-configerror-7cd96c86f9-4dlvl to lima-rancher-desktop
    
  3. 3 llm model turn internal 3.9s · 8.6k tok · $0.0003

    model output — its reasoning, and the tools it asked for

    -> calls get_events
  4. 4 tool get_events kubernetes 0ms · 720 B

    arguments

    {"namespace":"hephaisto-chaos","objectName":"c7-configerror-7cd96c86f9-4dlvl"}

    result digest — what the model actually saw

    [step 01a05efb-ee3a-7054-bd58-4220647a5664] get_events
    log digest: 5 lines, 720 bytes
    
    -- last 5 lines --
    type     reason     count  objects                              first  last  message
    -------  ---------  -----  -----------------------------------  -----  ----  ---------------------------------------------------------------------------------------------
    Normal   Pulled     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Container image "busybox:1.37" already present on machine and can be accessed by the pod
    Warning  Failed     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Error: secret "c7-database-credentials" not found
    Normal   Scheduled  1      Pod/c7-configerror-7cd96c86f9-4dlvl  5m     5m    Successfully assigned hephaisto-chaos/c7-configerror-7cd96c86f9-4dlvl to lima-rancher-desktop
    
  5. 5 llm model turn internal 8.5s · 9.3k tok · $0.0003

    model output — its reasoning, and the tools it asked for

    -> calls conclude
  6. 6 tool conclude internal 0ms · 129 B x failed
    x The arguments dictionary is missing a value for the required parameter 'request'. (Parameter 'arguments')

    arguments

    {"findings":[{"category":"dependency","confidence":0.95,"evidence":[{"excerpt":"reason: CreateContainerConfigError\n        message: secret \u0022c7-database-credentials\u0022 not found","step_id":"01a05efb-dee4-7f0a-bd5c-b4e4bc8e6eec"},{"excerpt":"Warning  Failed     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Error: secret \u0022c7-database-credentials\u0022 not found","step_id":"01a05efb-ee3a-7054-bd58-4220647a5664"}],"hypothesis":"The pod c7-configerror cannot start because the referenced Secret \u0022c7-database-credentials\u0022 does not exist in namespace hephaisto-chaos, causing a CreateContainerConfigError."}],"summary":"The pod is stuck in CreateContainerConfigError because the required Secret c7-database-credentials cannot be found. Creating or correcting that Secret in the hephaisto-chaos namespace will resolve the ConfigError."}

    result digest — what the model actually saw

    [step 01a05efc-0f82-7be6-8af8-0e1e2d2c210a] conclude
    log digest: 1 lines, 129 bytes
    
    -- last 1 lines --
    ERROR: conclude failed: The arguments dictionary is missing a value for the required parameter 'request'. (Parameter 'arguments')
    
  7. 7 llm model turn internal 6.8s · 9.5k tok · $0.0003

    model output — its reasoning, and the tools it asked for

    -> calls conclude
  8. 8 tool conclude internal 0ms · 141 B

    arguments

    {"request":{"findings":[{"category":"dependency","confidence":0.95,"evidence":[{"excerpt":"reason: CreateContainerConfigError\n        message: secret \u0022c7-database-credentials\u0022 not found","step_id":"01a05efb-dee4-7f0a-bd5c-b4e4bc8e6eec"},{"excerpt":"Warning  Failed     26     Pod/c7-configerror-7cd96c86f9-4dlvl  26s    26s   Error: secret \u0022c7-database-credentials\u0022 not found","step_id":"01a05efb-ee3a-7054-bd58-4220647a5664"}],"hypothesis":"The pod c7-configerror cannot start because the referenced Secret \u0022c7-database-credentials\u0022 does not exist in namespace hephaisto-chaos, causing a CreateContainerConfigError."}],"summary":"The pod is stuck in CreateContainerConfigError because the required Secret c7-database-credentials cannot be found. Creating or correcting that Secret in the hephaisto-chaos namespace will resolve the ConfigError."}}

    result digest — what the model actually saw

    [step 01a05efc-2a04-7f01-b7b0-bb7dc47a3c70] conclude
    log digest: 1 lines, 141 bytes
    
    -- last 1 lines --
    Conclusion recorded. Your citations are now checked against what the tools actually returned; any that do not match are discarded. Stop here.
    
  9. 9 llm model turn internal 5.3s · 9.7k tok · $0.0003

    model output — its reasoning, and the tools it asked for

    **Findings**
    
    | Category | Confidence | Hypothesis | Evidence |
    |----------|------------|------------|----------|
    | dependency | 0.95 | The pod `c7-configerror-7cd96c86f9-4dlvl` cannot start because the referenced Secret **`c7-database-credentials`** does not exist in namespace `hephaisto-chaos`, leading to a `CreateContainerConfigError`. | - `describe_pod` shows container state `waiting.reason: CreateContainerConfigError` with message `secret "c7-database-credentials" not found` (step 01a05efb-dee4-7f0a-bd5c‑b4e4bc8e6eec).<br>- `get_events` lists a warning event `Error: secret "c7-database-credentials" not found` for the same pod (step 01a05efb-ee3a-7054-bd58‑4220647a5664). |
    
    **Summary**
    
    The pod is stuck in `CreateContainerConfigError` because the required Secret `c7-database-credentials` cannot be found in the `hephaisto-chaos` namespace. Creating the missing Secret (or correcting its name) will allow the container to start and resolve the ConfigError.
  10. 10 llm model turn internal 7.1s · 2.8k tok · $0.0001

    model output — its reasoning, and the tools it asked for

    {
      "summary": "Missing Secret c7-database-credentials is causing CreateContainerConfigError; this is a configuration issue requiring manual creation or correction of the Secret, which is outside the automated action set.",
      "no_action_required": true,
      "actions": []
    }

findings 1

primary dependency 0.95

The pod c7-configerror cannot start because the referenced Secret "c7-database-credentials" does not exist in namespace hephaisto-chaos, causing a CreateContainerConfigError.

  • step 4 Warning Failed 26 Pod/c7-configerror-7cd96c86f9-4dlvl 26s 26s Error: secret "c7-database-credentials" not found

plan

! Would have done this — nothing was executed. The planning model holds no tools and emits JSON against a schema; execution is separate C# over a closed action vocabulary. Every action below was judged by the policy engine before anything could touch it.

Missing Secret c7-database-credentials is causing CreateContainerConfigError; this is a configuration issue requiring manual creation or correction of the Secret, which is outside the automated action set.

No action was proposed. The planner set no_action_required — which is the expected outcome for most incidents, and what the planning prompt tells it to default to.

how it was graded

root cause
Correct
plan
CorrectlyDeclined
structurally sound
yes
recorded
2026-09-01
agent version
0.5.1-main.0.4+23df805946ec0c37b0adafafeb12130231adec93

prompt sha256:ff482427c864c13d STALE - prompts and runbooks now hash sha256:9bd109234a0b2707