Resources/Guide

System of record for your production story.

Why every service catalog goes stale by week two, why that just became an emergency now that agents act on it, and the architecture that stays true: observed, not declared.

Format · Decision guide
Audience · VP Eng / Platform / SRE
Edition · 2026
License · CC‑BY‑4.0
Chapter 01

The catalog everyone has and nobody trusts.

Almost every platform team has a service catalog. Almost none of them trust it. Entries rot on every restructure, every dependency shift, every new service. A page that was accurate at launch quietly becomes fiction, with no signal when it does.

The proof shows up during incidents. On-call discovers the real topology of the system while it is on fire, because the catalog described a shape the service outgrew months ago. Meanwhile two to three engineers spend real, recurring time keeping Backstage running: writing YAML, chasing owners, reconciling entries that were already wrong before the pull request merged.

"The catalog nobody maintains is the context layer every agent that touches production needs."NOFire · System of Record for Your Production Story

This is not a discipline problem that better process will fix. It is structural. Any catalog that depends on humans to declare and re-declare the truth of a system that changes daily will always lag that system. The question is not how to maintain it harder. The question is whether it should be maintained by hand at all.

Chapter 02

What changed: your catalog has a new reader.

The stale-catalog problem has existed for years. What changed in 2026 is who reads the catalog. The primary reader is no longer a human skimming a page before a change. It is an agent, and the agent does not skim. It acts.

Coding agents read the catalog to understand dependencies before they change code. Deployment agents read it to reason about what a rollout will touch. Incident-response agents read it to decide what to do while production is degraded. In every case, the catalog is not reference material. It is the context an autonomous system executes on.

A wrong dependency once cost an engineer twenty minutes of confusion, then they noticed and corrected course. The same stale entry now becomes a wrong action when an agent executes on it, with no built-in moment of doubt. The maintenance problem became a reliability problem.

This reframes the whole decision. A catalog that is 80 percent accurate was tolerable when a person filled the gaps with judgment. It is not tolerable when the reader is a system that treats every fact as ground truth. The bar for a catalog just moved from useful to trustworthy.

Chapter 03

Declaration vs observation.

Every catalog tool shares one assumption: that a human will keep it accurate. Backstage, Cortex, Compass, and Roadie all populate the catalog from what someone declared, typically in YAML, and trust that declaration to stay current on its own. It never does.

NOFire AI catalogs from observation instead. An in-cluster agent, your cloud provider integrations, your code, and your telemetry all feed a single Production Context Graph, synthesized continuously rather than typed in once. The catalog is the legible view of that graph: ownership traced from deploy history and contributor activity, dependencies from the observed call graph, readiness scored from real SLOs, alerts, and incidents. Nobody writes an entry, and nobody has to remember to update one.

Chapter 04

Provenance and confidence.

Observation only earns trust if it is honest about its own limits. Every fact in the catalog carries a provenance label: runtime (observed live, via the in-cluster agent and your cloud provider integrations), synthesized (inferred from patterns across those signals), or intent (declared in code), each with a confidence score.

The catalog structure, dependencies, readiness, and blast radius come from your system, not from a language model. An LLM only narrates what it cannot invent: prose about what the facts mean. If there is no evidence for a claim, the catalog says so rather than filling the gap. That is the difference between a catalog a human tolerates and one an agent can safely act on.

Chapter 05

Seeded from code, kept true by production.

Most catalogs start empty and stay behind. NOFire AI reads your GitHub repositories directly, including README files, CHANGELOG entries, contributor history, CI/CD pipeline definitions, and release tags. Even before a service emits a single metric, it is seeded from your code, so the catalog is never empty.

From there, live production signals take over: telemetry, deploys, and incidents keep every fact current, fusing repos, traces, deploys, and cloud signals almost immediately rather than waiting on a discovery scan or a quarterly audit.

Chapter 06

The system of record.

Once a catalog is observed rather than declared, it can carry the facts a platform team actually needs. Ownership, readiness scorecards, blast radius, and the change timeline, all derived automatically rather than typed in by hand.

Readiness is four binary checks against live evidence: has an owner, has metrics, has alerts, is not a single point of failure. Blast radius is calculated from the observed call graph, so when a service fails you see exactly which downstream services are at risk, in seconds. Past incident resolutions are captured and surfaced on the service page, so the catalog gets smarter after every incident.

Chapter 07

How to migrate off Backstage.

Migration is not a rip-and-replace project. Connect the in-cluster agent, your cloud provider, and your repositories, and let those signals synthesize the catalog alongside whatever you run today. Validate the observed graph against the topology your team already knows, then retire the manual entries once you trust it.

Unlike Backstage, Cortex, and Compass, NOFire AI requires zero YAML, zero manual catalog entries, and zero plugin maintenance, so there is nothing to export and nothing to re-create by hand.

Chapter 08

The alternatives, compared.

Every tool in this category is a reasonable product. The difference is architectural: NOFire AI catalogs from observation, everything else catalogs from declaration.

  • Backstage is a framework, not a finished product: 70-plus setup steps, six to twelve months to a usable portal, and one to two dedicated platform engineers once you cross roughly 200 engineers.
  • Cortex re-evaluates scorecards against metadata your engineers declared in cortex.yaml, on a four-hour polling cycle, with an estimated 0.25 FTE spent on ongoing catalog hygiene.
  • Compass is being discontinued: Atlassian ended sales on May 13, 2026, with support ending December 31, 2027. Real-world adoption reports show 40 to 60 percent of entries go stale within three to six months.
  • Roadie manages the Backstage infrastructure, not the catalog-info.yaml files, so YAML rot survives the move to managed hosting, starting at a $1,200 per month, 50-seat floor.
Companion reading

For the business case built for engineering leaders, including the maintenance-tax model and a 90-day migration plan, see the Platform Leader’s Guide. To see the approach applied to your own stack, visit the self-maintaining service catalog.

See your own catalog, observed.

Connect the in-cluster agent, your cloud provider, and your repos, and watch those signals synthesize into a living catalog almost immediately, with provenance on every fact.

Book a demo