# backstage (blogs) — RSS Amplifier

Recent posts from the 2 feeds in the RSS Amplifier directory that cover backstage.

Page: <https://rssamplifier.com/topics/backstage/blogs>  
Feed: <https://rssamplifier.com/topics/backstage/blogs.md>

---

## [Nx Polygraph and the synthetic monorepo](https://riftmap.dev/blog/nx-polygraph-synthetic-monorepo/)

_2026-07-28 · Daniel Westgaard · Riftmap Blog_

Nx named the synthetic monorepo and built a genuine cross-repo package-and-API graph. The phrase hides a second problem it does not map today: which repositories a Terraform, Docker, or Helm change actually breaks.

## [The Em Dash Tell](https://lebaron.sh/posts/em-dash-ai-tell/)

_2026-07-24 · Le Baron de Charlus_

Something changed in the last couple of months if not years now. Open Slack, open a Notion page, scroll LinkedIn for thirty seconds, and there it is: a long dash sitting in the middle of a sentence, doing a job a comma or a period used to do just fine. It shows up so often now that it isn’t really a stylistic choice anymore, it’s a tell. A character almost nobody typed The mark is the em dash.…

## [What version constraints actually look like across real Terraform estates](https://riftmap.dev/blog/version-constraints-across-real-terraform-estates/)

_2026-07-21 · Daniel Westgaard · Riftmap Blog_

I parsed four public Terraform estates. Versioning style is an org-level habit, not a per-module choice — and it decides whether a bulk migration lands cleanly.

## [Is GitLab Orbit a developer portal? (Orbit vs the IDPs)](https://riftmap.dev/blog/is-gitlab-orbit-a-developer-portal/)

_2026-07-18 · Daniel Westgaard · Riftmap Blog_

Port's CEO called Backstage dead, then GitLab shipped Orbit. Is Orbit a developer portal? No, it ships no catalog — and the catalog wars miss the question none of them answers.

## [Cross-repo blast radius in nine public platform orgs: the most depended-on repo at Grafana isn't Grafana](https://riftmap.dev/blog/cross-repo-blast-radius-9-orgs/)

_2026-07-14 · Daniel Westgaard · Riftmap Blog_

Parsed cross-repo dependency edges across 1,297 repos in nine public platform orgs. One in four repos is load-bearing for a sibling. Top hub: 188 dependents.

## [Blast radius in software engineering: what it is, how to measure it, how to contain it](https://riftmap.dev/blog/blast-radius-software-engineering/)

_2026-07-08 · Daniel Westgaard · Riftmap Blog_

Blast radius is really two measurements — the code radius your tests catch, and the artifact radius that crosses repos. In one org, 147 repos hit one module.

## [Enseignement supérieur privé : la dérive des BTS SIO et CIEL](https://lebaron.sh/posts/derive-enseignement-superieur/)

_2026-07-06 · Le Baron de Charlus_

L’essor des formations initiales et en alternance dans le secteur du numérique a entraîné la multiplication des établissements privés proposant le BTS SIO (Services Informatiques aux Organisations), décliné en options SLAM (développement) et SISR (réseaux), ainsi que le nouveau cursus CIEL (cybersécurité, informatique et réseaux). Pourtant, derrière les promesses d’employabilité et malgré des…

## [Private Higher Education: The Decline of BTS SIO and CIEL Programs](https://lebaron.sh/posts/downward-spiral-french-education/)

_2026-07-06 · Le Baron de Charlus_

The boom in initial training and work-study programs within the digital sector has led to a proliferation of private institutions offering the BTS SIO ( Services Informatiques aux Organisations ), split into the SLAM (software development) and SISR (networks and infrastructure) options, as well as the new CIEL curriculum ( Cybersécurité, Informatique et Réseaux ). Behind the promises of high…

## [What 242 Cloud Posse repos actually depend on](https://riftmap.dev/blog/what-242-cloudposse-repos-depend-on/)

_2026-07-05 · Daniel Westgaard · Riftmap Blog_

A Riftmap scan of 242 Cloud Posse repos found 147 declaring terraform-null-label, 133 on context.tf line 24, plus what grep, symbol graphs, and catalogs miss.

## [Declared, inferred, registered: the three ways a tool knows a cross-repo dependency exists](https://riftmap.dev/blog/declared-inferred-registered/)

_2026-07-04 · Daniel Westgaard · Riftmap Blog_

Parsed vs inferred is a two-horse race that hides a third runner: registered. How declared, inferred, and registered dependency tools each know an edge exists.

## [Trade Bitcoin and Ethereum Today (Sponsored)](https://crawlproof.com/a/2W50EytcyJkB)

_2026-07-03 · **Sponsored**_

Buy, sell, and margin trade BTC and ETH with EUR, USD, CAD, GBP, or JPY.

## [How to add a blast-radius gate to your merge pipeline](https://riftmap.dev/blog/blast-radius-gate-merge-pipeline/)

_2026-07-03 · Daniel Westgaard · Riftmap Blog_

A pull request to a repository that a hundred others build on should not merge with one approval from a phone. A CI gate that routes review by measured downstream exposure — two HTTP calls, about forty lines, GitLab CI or GitHub Actions, no cloud credentials in the pipeline.

## [Can AI check the blast radius of a PR before you merge?](https://riftmap.dev/blog/can-ai-check-blast-radius-of-pr-before-merge/)

_2026-07-02 · Daniel Westgaard · Riftmap Blog_

Yes — but only if a dependency graph exists for it to query. At least three different graphs are being sold under one phrase, and each is blind to a different kind of change. Here's what each one genuinely sees, walked end to end on a real public org.

## [You can index every repo in Cursor. It still can't tell you what breaks.](https://riftmap.dev/blog/cursor-monorepo-indexing/)

_2026-07-01 · Daniel Westgaard · Riftmap Blog_

How to tune Cursor's codebase index for a large monorepo or a fifty-repo workspace, and the one question no amount of tuning makes it answer.

## [Claude Code reads your clone. Cursor reads similarity. Neither sees the graph.](https://riftmap.dev/blog/claude-code-cursor-cross-repo-context/)

_2026-06-30 · Daniel Westgaard · Riftmap Blog_

Both agents can be handed more than one repo — but Claude Code only sees your clone and Cursor's index answers similarity. How to wire in the dependency graph.

## [The repo your agent didn't clone is the one it breaks](https://riftmap.dev/blog/the-repo-your-agent-didnt-clone/)

_2026-06-29 · Daniel Westgaard · Riftmap Blog_

Coding agents got cross-repo access this year. They still can't see the blast radius of a base-image bump — because that edge was never a function call, and it lives in a repo they never cloned.

## [How to Find Every Consumer of Your Kustomize Base](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-kustomize-base/)

_2026-06-27 · Daniel Westgaard · Riftmap Blog_

You own a Kustomize base. Which overlays across your org build on it, at which ref — and what breaks when you change it? Why grep can't tell you, and what can.

## [I counted every cross-repo edge in two real orgs. Not one was a code symbol.](https://riftmap.dev/blog/cross-repo-edge-composition/)

_2026-06-25 · Daniel Westgaard · Riftmap Blog_

I scanned Prometheus and Cloud Posse and counted every cross-repo edge. Infrastructure runs from 38% to 99.75% of the coupling. Code symbols: zero.

## [You changed the shared CI template. Half the org got it instantly. The other half will never see it.](https://riftmap.dev/blog/changing-shared-ci-template-two-deployments/)

_2026-06-23 · Daniel Westgaard · Riftmap Blog_

A shared CI change is not a release. It is two deployments at once: instant to the pipelines tracking your branch, silent to the ones pinned to a tag. You hold the roster for neither.

## [How to Find Every Consumer of Your Ansible Role](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-ansible-role/)

_2026-06-21 · Daniel Westgaard · Riftmap Blog_

Ansible has no lockfile and no reverse lookup: change a shared role and nothing says who breaks. Why finding every consumer is harder than grep.

## [Overmind shows you the blast radius in your running cloud. It can't show you the repos that were building on what you changed.](https://riftmap.dev/blog/riftmap-vs-overmind/)

_2026-06-19 · Daniel Westgaard · Riftmap Blog_

Overmind reads your live AWS, GCP and Kubernetes state to tell you whether a Terraform apply is safe. Riftmap parses source to tell you which other repositories consume what you are changing. Both call it "blast radius". They are not the same radius.

## [100,000 Bonus Points Await You (Sponsored)](https://crawlproof.com/a/nHQL1GNoaMse)

_2026-06-18 · **Sponsored**_

Earn 100,000 bonus points after spending $5,000 in the first 3 months.

## [You deprecated the internal library. The repos still using it never saw the warning.](https://riftmap.dev/blog/deprecate-internal-library-find-consumers/)

_2026-06-18 · Daniel Westgaard · Riftmap Blog_

A deprecation warning only reaches consumers who recompile, and the repos that pinned the old version go quiet. Deprecating an internal library is a census problem.

## [Your senior engineer just left. Your bus factor was measuring the wrong thing.](https://riftmap.dev/blog/dependency-bus-factor/)

_2026-06-17 · Daniel Westgaard · Riftmap Blog_

A senior leaves and the code stays readable. What walks out is the cross-repo dependency map they held in their head — the part your bus factor, measured from commits, never counted.

## [How to Find Every Consumer of Your Internal Python Package](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-internal-python-package/)

_2026-06-16 · Daniel Westgaard · Riftmap Blog_

You maintain an internal Python package and a breaking change is coming. Which repos depend on it, at which version — and why pip, PyPI and your private index all answer the wrong question.

## [A CVE just hit your base image. Your scanner won't tell you which repos to fix.](https://riftmap.dev/blog/base-image-cve-which-repos-to-fix/)

_2026-06-15 · Daniel Westgaard · Riftmap Blog_

A scanner finds the vulnerable base image or package — not the repos you patch. Why CVE remediation is a cross-repo source problem, shown in Docker and npm.

## [Your senior engineer just gave notice. Most of what they knew was in the repos all along.](https://riftmap.dev/blog/senior-engineer-leaving-tribal-knowledge/)

_2026-06-14 · Daniel Westgaard · Riftmap Blog_

Tribal knowledge is two different things wearing one name. The half everyone panics about losing was declared in your Terraform, your Dockerfiles, and your CI config the whole time.

## [How to Find Every Consumer of Your Internal npm Package](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-internal-npm-package/)

_2026-06-13 · Daniel Westgaard · Riftmap Blog_

You maintain an internal npm package and a breaking change is coming. Which repos depend on it, at which version — and why npm answers this for public packages but not for your scoped ones.

## [GitLab Orbit maps your whole SDLC. It still can't tell you what an infrastructure change will break.](https://riftmap.dev/blog/gitlab-orbit-and-the-artifact-layer/)

_2026-06-12 · Daniel Westgaard · Riftmap Blog_

GitLab Orbit is an excellent symbol-and-SDLC graph. It's also the clearest illustration yet of the one layer that kind of graph can't reach: the infrastructure dependencies running between your repositories.

## [How to Find Every Consumer of Your GitLab CI Template](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-gitlab-ci-template/)

_2026-06-11 · Daniel Westgaard · Riftmap Blog_

You maintain a shared GitLab CI template. Which projects include it, at which ref — and what breaks when you merge? Why GitLab can't tell you, and what can.

## [Is Backstage worth it? The real question is whether anyone will use it](https://riftmap.dev/blog/is-backstage-worth-it/)

_2026-06-10 · Daniel Westgaard · Riftmap Blog_

The Backstage worth-it debate is always about cost — FTEs, months, TCO. Spotify's own head of Backstage engineering says that's not where it dies.

## [Backstage alternatives in 2026: first ask why you wanted Backstage](https://riftmap.dev/blog/backstage-alternatives/)

_2026-06-07 · Daniel Westgaard · Riftmap Blog_

Every "Backstage alternatives" roundup lists the same five portals. None of them asks the question that decides which alternative is right: what job sent you looking in the first place?

## [Prime Noise-Cancelling Picks (Sponsored)](https://crawlproof.com/a/W0sAcvPOyDmA)

_2026-06-06 · **Sponsored**_

Browse Prime-eligible, 4-star-and-up noise-cancelling earbuds with fast shipping and deals

## [How to give GitHub Copilot cross-repo context today](https://riftmap.dev/blog/how-to-give-copilot-cross-repo-context/)

_2026-06-06 · Daniel Westgaard · Riftmap Blog_

Three working ways to get cross-repo context into GitHub Copilot right now — multi-root workspaces, Copilot Spaces, and MCP for the cloud agent — and the one question all three leave you to answer by hand.

## [Monorepo vs polyrepo: the debate is measuring the wrong thing](https://riftmap.dev/blog/monorepo-vs-polyrepo/)

_2026-06-05 · Daniel Westgaard · Riftmap Blog_

Monorepo vs polyrepo is argued as a code-location debate. The real variable is whether "what depends on this" is queryable — and infrastructure never got a vote.

## [The CRA's 24-hour clock is a cross-repo question. Your SBOM answers a different one.](https://riftmap.dev/blog/cra-sbom-cross-repo-question/)

_2026-06-02 · Daniel Westgaard · Riftmap Blog_

The CRA's 24-hour reporting clock asks which products ship an exploited component. Your SBOM lists what is inside one artifact. Those are different questions, and the gap between them is a cross-repo IaC dependency graph.

## [Repo access was never the hard part](https://riftmap.dev/blog/repo-access-was-never-the-hard-part/)

_2026-05-31 · Daniel Westgaard · Riftmap Blog_

The multi-repo agent race is solving repository access. But access is plumbing — the cross-repo dependency graph is the part nobody upstream is parsing.

## [Inferred context is not a dependency graph](https://riftmap.dev/blog/inferred-context-is-not-a-dependency-graph/)

_2026-05-30 · Daniel Westgaard · Riftmap Blog_

An enterprise context engine makes your agent generate better code. A parsed dependency graph is the thing you gate a deploy on. Two jobs, two kinds of machinery, and why a confidence score is the wrong guarantee for the second one.

## [Modeled graphs and parsed graphs: two architectures for cross-repo context in the agentic era](https://riftmap.dev/blog/modeled-graphs-and-parsed-graphs/)

_2026-05-26 · Daniel Westgaard · Riftmap Blog_

Why Port's Blueprints can model the catalog you describe but not the dependency graph your repos already declare — and why modeled graphs and parsed graphs are different categories.

## [Symbol graphs and artifact graphs: why Sourcegraph stops where infrastructure starts](https://riftmap.dev/blog/symbol-graphs-and-artifact-graphs/)

_2026-05-22 · Daniel Westgaard · Riftmap Blog_

Why Sourcegraph's symbol graph can't tell you who consumes your Helm chart at v3.2.0 — and why symbol graphs and artifact graphs are different categories.

## [Cross-repo context is in product docs. The graph is not.](https://riftmap.dev/blog/cross-repo-context-is-in-product-docs/)

_2026-05-19 · Daniel Westgaard · Riftmap Blog_

The vocabulary moved into vendor docs in sixty days. The parser-derived cross-repo dependency graph it describes hasn't shipped in any AI coding product.

## [What 208 kubernetes-sigs repos actually depend on](https://riftmap.dev/blog/what-208-kubernetes-sigs-repos-actually-depend-on/)

_2026-05-16 · Daniel Westgaard · Riftmap Blog_

I scanned all 208 kubernetes-sigs repos with Riftmap. Here's the cross-repo dependency graph, including the 153 repos that import sigs.k8s.io/yaml.

## [AI coding agents need cross-repo context. The teams running them at scale are already building it themselves.](https://riftmap.dev/blog/ai-coding-agents-need-cross-repo-context/)

_2026-05-10 · Daniel Westgaard · Riftmap Blog_

Three teams shipped the same diagnosis in two weeks: AI coding agents need cross-repo context. Two built the dependency graph substrate. One built around it.

## [Meta needed 50+ AI agents to map their tribal knowledge. The most durable piece of their stack is the part you can build today.](https://riftmap.dev/blog/meta-tribal-knowledge-engine-build-the-graph-first/)

_2026-05-08 · Daniel Westgaard · Riftmap Blog_

A close read of Meta's April 2026 tribal knowledge engine, the academic paper they cited, and the architectural argument hidden inside both.

## [The catalog maintenance trap: why service catalogs go stale](https://riftmap.dev/blog/the-catalog-maintenance-trap/)

_2026-05-07 · Daniel Westgaard · Riftmap Blog_

Backstage and the developer-portal category solve a real problem. The reason platform teams quietly abandon them is something different, and it points at the shape of what actually works.

## [What 56 Prometheus repos actually depend on](https://riftmap.dev/blog/what-56-prometheus-repos-depend-on/)

_2026-04-26 · Daniel Westgaard · Riftmap Blog_

I scanned all 56 repos in the Prometheus org with Riftmap. Here's the cross-repo dependency graph, including the 25 repos that import client\_golang.

## [Change failure rate is up 30% — here's how to measure yours in an afternoon](https://riftmap.dev/blog/measure-your-change-failure-rate/)

_2026-04-21 · Daniel Westgaard · Riftmap Blog_

A practitioner's guide to calculating change failure rate for your team without a vendor platform — the DORA formula, the SQL, and the one cut nobody is making yet: AI-assisted PRs vs human-authored.

## [AI Doesn't Understand Blast Radius: Why Change Failure Rates Are Up 30%](https://riftmap.dev/blog/ai-doesnt-understand-blast-radius/)

_2026-04-19 · Daniel Westgaard · Riftmap Blog_

AI coding tools optimise for local correctness, but production breaks at the edges of the cross-repo dependency graph they can't see. A look at the 2025–2026 data — Cortex, DORA, CodeRabbit, and Amazon's own high-blast-radius memo — and what to put between the agent and main.

## [How to Find Every Consumer of Your Go Module](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-go-module/)

_2026-04-17 · Daniel Westgaard · Riftmap Blog_

You maintain an internal Go module. A breaking API change is coming. Which repos across your org import it — and at which version? Here's why the answer is harder than it should be.

## [How to Find Every Consumer of Your Helm Chart](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-helm-chart/)

_2026-04-16 · Daniel Westgaard · Riftmap Blog_

You maintain a shared Helm chart. A breaking value rename or API version bump is coming. Which deployments across your org depend on it — and at which version? Here's why the answer is harder than it should be.

## [How to Find Every Consumer of Your Reusable GitHub Actions Workflow](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-github-actions-workflow/)

_2026-04-15 · Daniel Westgaard · Riftmap Blog_

You maintain a shared GitHub Actions workflow. You need to rename an input, drop a step, or change a required secret. Which repos across your org call it — and at which ref? Here's why the answer is harder than it should be.

## [How to Find Every Consumer of Your Terraform Module](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-terraform-module/)

_2026-04-14 · Daniel Westgaard · Riftmap Blog_

When you need to make a breaking change to a shared Terraform module, which repos are affected? In one public org, 149 of 244 repositories consume a single module. Here is why the answer is harder than it should be.

## [How to Find Every Consumer of Your Docker Base Image](https://riftmap.dev/blog/how-to-find-every-consumer-of-your-docker-base-image/)

_2026-04-13 · Daniel Westgaard · Riftmap Blog_

When a CVE hits your Docker base image, which repos are affected? Here's why the answer is harder than it should be, and what a real solution requires.

