01 · Scenario A: the burst
Sixteen alerts in four minutes, across four teams.
orders-api is timing out, payments reports
its database unreachable, a node exporter goes quiet, a queue backs
up. Each alert, read on its own, points at a different service and
a different owner.
Today each one gets its own investigation and, if it warrants one,
its own issue. Sixteen honest findings about the wrong thing.
02 · What is built so far In development
A known-cascade table for Kubernetes alerts.
A rule-based correlator of co-firing alerts knows that
KubeletDown explains the pod alerts on that node. It also knows that a scraper going dark makes its targets look down. It elects a root and annotates the others as dependents. It stays within one tenant, so it never mislabels an outage elsewhere as "fix the root".
It ships switched off and only annotates. It does not yet collapse N issues into one. It also cannot see what is outside the cluster: a switch, an uplink or a VLAN.
03 · Ask the inventory Roadmap
NetBox knows which switch port every host hangs off.
The assistant will join the instance or node label of each alert to a NetBox record, inside the same process. The join goes from address to host, host to interface, and interface to switch port and VLAN. Fourteen of the
sixteen alerts land on hosts behind the same access switch uplink.
The join is strict. A key that matches two hosts abstains instead of guessing. The assistant says "not in NetBox" only after a complete read.
04 · A second witness Roadmap
Zabbix saw the port go down first.
For VM and bare-metal infrastructure that Zabbix monitors, the assistant will treat Zabbix problems as one more alert source. It will also use the Zabbix host inventory (OS, hardware, resources) as observed context beside NetBox.
Here Zabbix raised an interface-down problem on the switch uplink
about ninety seconds before the first Kubernetes alert. Two independent
sources, one cause.
05 · Masked at the source Roadmap
The model learns what a host is, never which host.
Inventory is core-infrastructure detail. The assistant will use addresses, MAC addresses, serials, VLAN ids, racks and site names for the join, then drop them. What reaches an AI model (LLM) is a closed-schema card. The card holds the role, platform family, status, update cadence, whether an owner is declared and an opaque team handle.
The assistant will express topology as relations between opaque handles, not as invented addresses. By default, it will drop any field that is not on the allowlist. A canary test will prove that no raw value survives.
06 · One finding Roadmap
One root-cause issue instead of sixteen.
The assistant will fold the dependents into a single issue. The issue names the shared uplink, lists every alert it explains, and states what could not be joined. The two alerts that did not fit the pattern keep
their own investigation.
07 · Scenario B: the playbook
An Ansible run fails fetching a secret. Every hour.
The scheduled Ansible apply mints its SSH certificate from Vault
before any play runs. Since last night it fails at that step:
HTTP 503, Vault is sealed. The playbook repository is fine.
The problem is somewhere else.
08 · Follow the declared edge Roadmap
From the CI log to the repo that owns the cause.
Rules, not an AI model, will match the failure signature (vault … 503 … sealed). The CI script itself names the Vault address and auth mount, so the dependency is declared, not guessed. The cluster map will resolve that Vault to its HelmRelease in the cluster repository.
In the cluster, the Vault pods are Running, 0/1 ready,
zero restarts. The one auto-unseal attempt at startup failed against Google Cloud KMS. Nothing ever tried again.
09 · The missing check In development
Auto-unseal, and no liveness probe on seal status.
A rule in the availability pack looks for exactly this shape: a Vault HelmRelease with KMS auto-unseal and no liveness probe. KMS auto-unseal means a cloud key service unlocks Vault at startup. A liveness probe is a check that restarts a stuck pod. Readiness only takes a sealed pod out of the Service. A liveness
probe on /v1/sys/health restarts the pod, and the restart retries the unseal.
The rule is meant to fire on its own, outage or not. The planned attribution in step
8 is what lets the MR cite the playbook failures as evidence.