This article introduces the concept of "blast radius analysis" within an Agentic Engineering Framework, a method to identify the potential impact of code changes before they are committed. It highlights how this approach addresses the challenge of implicit dependencies in complex systems, particularly when AI agents lack the tacit knowledge of human developers. By making dependency chains explicit, the system enhances observability and helps prevent cascading failures, improving the reliability and predictability of software evolution.
Read original on Dev.to #architectureThe article focuses on "blast radius analysis" as a critical practice in software development, especially within an "Agentic Engineering Framework" where AI agents are responsible for making code changes. The core problem it addresses is the invisibility of dependency chains, which can lead to unforeseen and expensive failures when a change in one component silently breaks others. This is particularly problematic for AI agents that lack the accumulated tacit knowledge of human developers regarding codebase structure and interdependencies.
Blast radius analysis is a technique used to determine what a code change "touches" beyond the directly edited files. It aims to reveal direct dependencies and potential downstream impacts. This is achieved by maintaining a "Component Fabric" – a structured metadata store (e.g., YAML cards) for significant files, outlining their IDs, types, subsystems, locations, purposes, and explicit dependencies (`depends_on`) and reverse dependencies (`depended_by`).
# .fabric/components/fw.yaml
id: fw
name: fw
type: script
subsystem: framework-core
location: bin/fw
purpose: "Main CLI entry point — routes to all agents and subsystems"
depends_on:
- target: create-task
type: calls
- target: update-task
type: calls
- target: context-dispatcher
type: calls
depended_by:
- source: plugin-audit
type: called_by
- source: fabric
type: called_byVisibility Over Prevention
A key design decision is to prioritize visibility over direct prevention. The system does not block commits based on blast radius, as some high-impact changes are necessary (e.g., refactoring). Instead, it surfaces potential impacts, empowering humans or informed AI agents to make deliberate decisions and plan accordingly. This aligns with the principle of "predictable, observable, auditable execution" by making change impact observable before propagation.