Skip to content

Finding

Source maps are published next to the app code

Anyone can rebuild your original files, including comments, file names, and any logic you assumed was hidden.

Last updated September 20, 2026

This week · About ten minutes

Why AI-built apps get this

Source maps are on by default in development and a build setting away from being published. An agent optimising for a working deploy has no reason to turn them off, and nothing in your app looks different when they ship, so they sit there handing out your file names and comments.

What it affects

Anyone can rebuild your original files, including comments, file names, and any logic you assumed was hidden.

What the evidence line looks like

https://example.com/assets/index-4f2a.js.map returned 200, 1.2 MB

Every finding on a result carries a line like this one: the request that was made and the answer that came back. You can run the same request yourself and get the same answer, which is the point.

The fix

Turn off source map output for production builds, or stop uploading the .map files. Seen at {map_url} for {bundle}.

Prompt for your coding agent

Your production source map is public at {map_url}. Turn off source map output for production builds, or stop uploading the .map files, so readers only get the compiled bundle.

A result gives you this prompt written for your builder, in its own dialect, and a batch prompt that carries every fix at once.

Incidents that involved this

  • Observed

    5,600 vibe-coded apps scanned

    More than 2,000 vulnerabilities and more than 400 exposed secrets found across vibe-coded apps.

Run this check yourself

This page is the explanation of the finding. The free tool runs the same check on your own app and returns the evidence line.

Source map exposure check

Related terms

Run the free Launch Risk Check on your app

ShipReady is not a penetration test or a security certification. No automated check can prove an application is secure.

Last updated September 20, 2026