41554 blogs · [ { "id": "01a087d4-d224-708a-b71c-e5e8c0aa5c6d", "title": "Pinning is a consent control, not a blast-radius control", "url": "https://riftmap.dev/blog/what-pinning-cant-tell-you/", "published_at": "2026-08-26T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764812acf0", "title": "Nx Polygraph and the synthetic monorepo", "url": "https://riftmap.dev/blog/nx-polygraph-synthetic-monorepo/", "published_at": "2026-07-28T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764852e2fd", "title": "What version constraints actually look like across real Terraform estates", "url": "https://riftmap.dev/blog/version-constraints-across-real-terraform-estates/", "published_at": "2026-07-21T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76489a2478", "title": "Is GitLab Orbit a developer portal? (Orbit vs the IDPs)", "url": "https://riftmap.dev/blog/is-gitlab-orbit-a-developer-portal/", "published_at": "2026-07-18T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7648d9f545", "title": "Cross-repo blast radius in nine public platform orgs: the most depended-on repo at Grafana isn't Grafana", "url": "https://riftmap.dev/blog/cross-repo-blast-radius-9-orgs/", "published_at": "2026-07-14T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764964c1d5", "title": "Blast radius in software engineering: what it is, how to measure it, how to contain it", "url": "https://riftmap.dev/blog/blast-radius-software-engineering/", "published_at": "2026-07-08T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76498c2d1b", "title": "What 242 Cloud Posse repos actually depend on", "url": "https://riftmap.dev/blog/what-242-cloudposse-repos-depend-on/", "published_at": "2026-07-05T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7649d53110", "title": "Declared, inferred, registered: the three ways a tool knows a cross-repo dependency exists", "url": "https://riftmap.dev/blog/declared-inferred-registered/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764a4c8e19", "title": "How to add a blast-radius gate to your merge pipeline", "url": "https://riftmap.dev/blog/blast-radius-gate-merge-pipeline/", "published_at": "2026-07-03T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764a7c09f0", "title": "Can AI check the blast radius of a PR before you merge?", "url": "https://riftmap.dev/blog/can-ai-check-blast-radius-of-pr-before-merge/", "published_at": "2026-07-02T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764a9fe65f", "title": "You can index every repo in Cursor. It still can't tell you what breaks.", "url": "https://riftmap.dev/blog/cursor-monorepo-indexing/", "published_at": "2026-07-01T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764b7bfbf7", "title": "Claude Code reads your clone. Cursor reads similarity. Neither sees the graph.", "url": "https://riftmap.dev/blog/claude-code-cursor-cross-repo-context/", "published_at": "2026-06-30T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764bd47f1d", "title": "The repo your agent didn't clone is the one it breaks", "url": "https://riftmap.dev/blog/the-repo-your-agent-didnt-clone/", "published_at": "2026-06-29T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764cb27590", "title": "How to Find Every Consumer of Your Kustomize Base", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-kustomize-base/", "published_at": "2026-06-27T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764ccafa35", "title": "I counted every cross-repo edge in two real orgs. Not one was a code symbol.", "url": "https://riftmap.dev/blog/cross-repo-edge-composition/", "published_at": "2026-06-25T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764d43566c", "title": "You changed the shared CI template. Half the org got it instantly. The other half will never see it.", "url": "https://riftmap.dev/blog/changing-shared-ci-template-two-deployments/", "published_at": "2026-06-23T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764ded3f0d", "title": "How to Find Every Consumer of Your Ansible Role", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-ansible-role/", "published_at": "2026-06-21T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764e9a7c2f", "title": "Overmind shows you the blast radius in your running cloud. It can't show you the repos that were building on what you changed.", "url": "https://riftmap.dev/blog/riftmap-vs-overmind/", "published_at": "2026-06-19T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764f3a3660", "title": "You deprecated the internal library. The repos still using it never saw the warning.", "url": "https://riftmap.dev/blog/deprecate-internal-library-find-consumers/", "published_at": "2026-06-18T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764f7348e1", "title": "Your senior engineer just left. Your bus factor was measuring the wrong thing.", "url": "https://riftmap.dev/blog/dependency-bus-factor/", "published_at": "2026-06-17T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e764fb2a39f", "title": "How to Find Every Consumer of Your Internal Python Package", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-internal-python-package/", "published_at": "2026-06-16T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7650959408", "title": "A CVE just hit your base image. Your scanner won't tell you which repos to fix.", "url": "https://riftmap.dev/blog/base-image-cve-which-repos-to-fix/", "published_at": "2026-06-15T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7650ce54d6", "title": "Your senior engineer just gave notice. Most of what they knew was in the repos all along.", "url": "https://riftmap.dev/blog/senior-engineer-leaving-tribal-knowledge/", "published_at": "2026-06-14T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76510bcb26", "title": "How to Find Every Consumer of Your Internal npm Package", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-internal-npm-package/", "published_at": "2026-06-13T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76518a9af7", "title": "GitLab Orbit maps your whole SDLC. It still can't tell you what an infrastructure change will break.", "url": "https://riftmap.dev/blog/gitlab-orbit-and-the-artifact-layer/", "published_at": "2026-06-12T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7651f4bb84", "title": "How to Find Every Consumer of Your GitLab CI Template", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-gitlab-ci-template/", "published_at": "2026-06-11T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76526b4dbf", "title": "Is Backstage worth it? The real question is whether anyone will use it", "url": "https://riftmap.dev/blog/is-backstage-worth-it/", "published_at": "2026-06-10T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7653186e83", "title": "Backstage alternatives in 2026: first ask why you wanted Backstage", "url": "https://riftmap.dev/blog/backstage-alternatives/", "published_at": "2026-06-07T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e76537d0f33", "title": "How to give GitHub Copilot cross-repo context today", "url": "https://riftmap.dev/blog/how-to-give-copilot-cross-repo-context/", "published_at": "2026-06-06T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7653dd3217", "title": "Monorepo vs polyrepo: the debate is measuring the wrong thing", "url": "https://riftmap.dev/blog/monorepo-vs-polyrepo/", "published_at": "2026-06-05T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7654b695c8", "title": "The CRA's 24-hour clock is a cross-repo question. Your SBOM answers a different one.", "url": "https://riftmap.dev/blog/cra-sbom-cross-repo-question/", "published_at": "2026-06-02T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7654e78962", "title": "Repo access was never the hard part", "url": "https://riftmap.dev/blog/repo-access-was-never-the-hard-part/", "published_at": "2026-05-31T00:00:00+00:00" }, { "id": "01a087d4-d225-7395-a4d7-6e7655172062", "title": "Inferred context is not a dependency graph", "url": "https://riftmap.dev/blog/inferred-context-is-not-a-dependency-graph/", "published_at": "2026-05-30T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd26c88d1", "title": "Modeled graphs and parsed graphs: two architectures for cross-repo context in the agentic era", "url": "https://riftmap.dev/blog/modeled-graphs-and-parsed-graphs/", "published_at": "2026-05-26T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd2aef251", "title": "Symbol graphs and artifact graphs: why Sourcegraph stops where infrastructure starts", "url": "https://riftmap.dev/blog/symbol-graphs-and-artifact-graphs/", "published_at": "2026-05-22T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd2f00647", "title": "Cross-repo context is in product docs. The graph is not.", "url": "https://riftmap.dev/blog/cross-repo-context-is-in-product-docs/", "published_at": "2026-05-19T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd30ad4b6", "title": "What 208 kubernetes-sigs repos actually depend on", "url": "https://riftmap.dev/blog/what-208-kubernetes-sigs-repos-actually-depend-on/", "published_at": "2026-05-16T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd3208ee5", "title": "AI coding agents need cross-repo context. The teams running them at scale are already building it themselves.", "url": "https://riftmap.dev/blog/ai-coding-agents-need-cross-repo-context/", "published_at": "2026-05-10T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd3aea4cf", "title": "Meta needed 50+ AI agents to map their tribal knowledge. The most durable piece of their stack is the part you can build today.", "url": "https://riftmap.dev/blog/meta-tribal-knowledge-engine-build-the-graph-first/", "published_at": "2026-05-08T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd3e14e71", "title": "The catalog maintenance trap: why service catalogs go stale", "url": "https://riftmap.dev/blog/the-catalog-maintenance-trap/", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd402cc4c", "title": "What 56 Prometheus repos actually depend on", "url": "https://riftmap.dev/blog/what-56-prometheus-repos-depend-on/", "published_at": "2026-04-26T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd46f4ff7", "title": "Change failure rate is up 30% — here's how to measure yours in an afternoon", "url": "https://riftmap.dev/blog/measure-your-change-failure-rate/", "published_at": "2026-04-21T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd55be2a2", "title": "AI Doesn't Understand Blast Radius: Why Change Failure Rates Are Up 30%", "url": "https://riftmap.dev/blog/ai-doesnt-understand-blast-radius/", "published_at": "2026-04-19T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd5cd630d", "title": "How to Find Every Consumer of Your Go Module", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-go-module/", "published_at": "2026-04-17T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd5f0aa32", "title": "How to Find Every Consumer of Your Helm Chart", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-helm-chart/", "published_at": "2026-04-16T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd6c6e72d", "title": "How to Find Every Consumer of Your Reusable GitHub Actions Workflow", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-github-actions-workflow/", "published_at": "2026-04-15T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd71cf40d", "title": "How to Find Every Consumer of Your Terraform Module", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-terraform-module/", "published_at": "2026-04-14T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd7bd0abe", "title": "How to Find Every Consumer of Your Docker Base Image", "url": "https://riftmap.dev/blog/how-to-find-every-consumer-of-your-docker-base-image/", "published_at": "2026-04-13T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd85dd33e", "title": "The State of Infrastructure Dependency Tooling in 2026", "url": "https://riftmap.dev/blog/the-state-of-infrastructure-dependency-tooling-2026/", "published_at": "2026-04-09T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd86a998b", "title": "Auto-Discovering Infrastructure Dependencies Across 10 Ecosystems", "url": "https://riftmap.dev/blog/auto-discovering-infrastructure-dependencies-across-10-ecosystems/", "published_at": "2026-04-04T00:00:00+00:00" }, { "id": "01a087d4-d226-739d-ba8b-1fecd93cdad8", "title": "The Infrastructure Dependency Problem No One Has Solved", "url": "https://riftmap.dev/blog/infrastructure-dependency-problem/", "published_at": "2026-03-30T00:00:00+00:00" } ] posts Claim your blog
Back to riftmap.dev
Blog · corpus.blog/blogs/riftmap.dev/posts

riftmap.dev

riftmap.dev

2026