SShortSingh.
Back to feed

How a 'Blast-Radius Card' Can Prevent Shared Code Changes From Breaking Releases

0
·4 views

A contributor's timeout fix to a shared helper imported by twelve modules appeared complete because unit tests passed, but a later release candidate failed when a worker called the old function signature through a separate package. Maintainers had to manually reconstruct the call graph, delaying the release and consuming valuable review time. The proposed solution is a structured markdown file called BLAST_RADIUS.md, kept in the branch and treated as a merge gate, which documents every call site, signature change, and affected test before any code is merged. The card is populated using repeatable terminal commands — such as ripgrep and git grep — so any reviewer can independently verify the full impact of a change without relying on tribal knowledge. Three rules enforce honesty: every call site must be traceable to a rerunnable command, every exclusion must cite a clear import boundary, and every intended behavior change must be described in a single sentence.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Why Editing an AI Agent's Prompt Is a Silent Production Deployment

A developer working on AI voice agents warns that editing a prompt is effectively a live production deployment, yet lacks the safeguards of a normal software release — no build process, no diff, no test suite. Because prompts have no scoping, a single sentence change affects every branch of a conversation simultaneously, often causing unintended regressions in unrelated behaviours. The author experienced two real incidents where targeted prompt edits caused the agent to answer questions it was supposed to decline and made callers hang up mid-booking — neither failure triggered any system alert. Unlike traditional software, there is no deterministic replay of past calls, making bugs harder to trace and reproduce. To compensate, the author maintains a frozen set of 12–20 real-traffic call scenarios as a baseline behavioural check before any prompt change goes live.

0
ProgrammingDEV Community ·

Student Builds AI Tool to Convert Single Photos Into 3D Flythrough Maps

A second-year student developed DepthWizard, a pipeline that transforms a single 2D image into an interactive 3D flythrough using monocular depth estimation and semantic segmentation. The project was built as a submission for Smart India Hackathon, where it competed against around 160 teams but did not advance past the internal round. The system combines several open-source tools — including Depth Anything V2, SAM 2, Open3D, and CesiumJS — to reconstruct georeferenced 3D meshes from ordinary satellite, drone, or camera images without specialized hardware. The tool was conceived to address the high cost and complexity of traditional 3D terrain mapping methods, with potential use cases in disaster response, infrastructure planning, and unmapped regions. The developer noted that converting relative depth output into accurate, georeferenced elevation data remains the hardest unsolved challenge, and plans to complete a fully working version by the end of the academic year.

0
ProgrammingDEV Community ·

billboard.js 4.1.0 adds live resize, customizable subchart, and CSP-safe web worker

Naver has released billboard.js v4.1.0, a minor update to the open-source JavaScript charting library. The release introduces a new resize.live option that redraws charts continuously as their container is resized, using either per-frame redrawing or CSS stretching depending on rendering budget. The subchart overview can now be configured with its own chart type, axes, and optional brush interaction, rather than simply mirroring the main chart. A CSP-compatible option for specifying the Web Worker source has also been added to improve security policy compliance. Additionally, the React component has been moved into the main package as a subpath export, simplifying integration for React users.

0
ProgrammingDEV Community ·

Fix Chaotic Microservices Architecture by Documenting Before Rewriting

A software architect working on a growing gamedev project with roughly twenty services argues that architectural disorder is best addressed through documentation rather than rewrites. The project's services evolved organically without deliberate design, leaving decisions scattered across chat logs and individual memory, causing incidents and ballooning estimates. The proposed first step is a one-page 'service passport' for each service, capturing its purpose, responsibilities, stack, owner, and operational details. These passports are maintained by service owners, updated alongside code changes, and kept brief to avoid becoming abandoned wiki pages. Aggregated into a registry and a plain-text call graph stored in version control, they create a living map that exposes real boundaries, orphaned services, and integration risks before they cause costly failures.