John Miniadis
Why ordinary internal tools become production risks, from vibe-coded apps to legacy in-house tools.
Internal tools become production risks when they quietly start running real operations without the controls a production system needs: no access model, no audit trail, no owner, and nothing that catches a failure before it spreads. The newest version is the tool prompted into existence by AI in an afternoon. The oldest is the legacy in-house app nobody can change.
The gap is rarely dramatic at the start. A spreadsheet macro becomes the way invoices get approved. A small admin panel becomes the only place a refund can be issued. A script someone wrote to clean up data becomes a nightly job that three teams depend on. None of these were built as production systems, and yet each one now sits in the path of money moving, customers being served, or a regulator asking for a record. The risk is the distance between what the tool does and how it was built.
This is a pattern Stackdrop sees across mid-market and enterprise operations in EMEA, from regulated finance to multi-region healthcare. The tools that cause the most exposure are almost never the ones leadership is watching. They are the quiet ones who grew load-bearing without anyone deciding they should.
When does an internal tool become a production risk?
An internal tool becomes a production risk the moment it runs a real operation that the business cannot easily undo or recover. The trigger is not how it was built or who built it. It is what now depends on it. A prototype that calculates a forecast for one analyst is low stakes. The same prototype becomes a production risk the day finance closes the quarter from its output and no one keeps a record of how the numbers were produced.
The shift usually happens without a decision. A tool that started as a convenience picks up users, then data, then a process that has no fallback. By the time it is load-bearing, it is doing production work with none of the production controls. The work moved into production; the engineering did not follow.
This is why the question of when matters more than the question of how. You can build a tool carefully and still have it drift into a risk as its role grows. You can build one quickly and keep it safe if its role stays contained. The risk lives in the role the tool plays, so that is what to track. When a tool can move money, change a customer record, or produce a number a regulator might ask about, it has crossed into territory where governance is no longer optional.
Why are vibe-coded tools the fastest-growing version of this risk?
Vibe-coded tools are the fastest-growing version of this risk because they let someone with no engineering background prompt a working application into existence in an afternoon, and a working application is exactly what feels safe to start using. Vibe coding generates real code from a natural-language prompt. The output looks finished, runs on the first try often enough to build confidence, and arrives with none of the controls a production tool needs.
The specific danger is what gets baked in during that afternoon. A non-engineer building under time pressure tends to hardcode a database credential or an API key directly into the prompt or the code, because that is the path that makes the tool work right now. There is no role-based access control, so everyone who can open the tool can do everything the tool can do. There is no audit trail, so when something goes wrong there is no record of who did what. And there is no owner, because the person who prompted it into existence did not sign up to maintain a production system. Operations and security teams have started flagging exactly this pattern in community discussions: internal tools and B2B agents shipped with live credentials sitting in plain text inside the prompt, running against real systems. [VERIFY: the specific community thread URLs from the brief, "is vibe coding truly a threat to SaaS" and the B2B-agents-with-credentials-in-prompts thread, need to be added inline before publish; the skill requires every community reference to carry its link, and no verified URL is in the Atlas.]
A vibe-coded tool is not unsafe because AI wrote the code. It is unsafe because nobody governs what the code can reach. The same tool, built with access controls, validation at the point of entry, an audit trail, and a named owner, can be a legitimate production system. The afternoon build skips all four, and the gap stays invisible until the day it does not.
What governance gaps create the risk in any internal tool?
The same four gaps create the risk in any internal tool, whether it was vibe-coded last week or written in-house a decade ago: no access control, no audit trail, no clear owner, and no safe way to change it. These are the controls that separate a production system from a tool that happens to be running in production. A tool can be missing one of them and still function. It accumulates risk in proportion to how many it is missing and how much depends on it.
Access control is the first gap. Without role-based access control, the tool cannot tell the difference between a junior operator and an administrator, so every user holds the most dangerous permission the tool offers. The audit trail is the second. Without it, there is no record of who changed a record, approved a payment, or exported a dataset, which is the exact evidence an auditor or a regulator asks for. Ownership is the third, and the quietest. A tool with no named owner has no one accountable for its security, no one to call when it breaks, and no one with the authority to change it safely. Change control is the fourth. A legacy in-house tool often fails here even when it has the others; the person who understood it has left, the code is undocumented, and any change risks breaking a process no one fully understands anymore.
Legacy tools and AI-prompted tools converge on the same failure from opposite directions. The vibe-coded tool never had governance because it was built too fast to include it. The legacy tool may have had it once, then lost it as people left and the system aged past anyone's understanding. Both end up as ungoverned systems running real operations, which is the working definition of operational risk in internal tools. The age of the tool is not the point. The missing controls are.
Why does this risk stay invisible to leadership?
This risk stays invisible to leadership because internal tools are rarely reviewed as infrastructure. They enter the business as productivity, not as systems. A team builds something to move faster, it works, and it disappears into the daily routine. Nobody files it under the same scrutiny as the ERP or the customer database, because it never went through procurement, never had a security review, and never appeared on an architecture diagram.
The accounting makes it worse. A tool that took an afternoon to build carries an assumed cost of an afternoon, so it does not register as something worth governing. The real cost shows up later and lands somewhere else: a failed audit, a data exposure, a quarter-end close that cannot be reconciled, or a process that stops the day one person leaves. By then the tool has been load-bearing for months and the people who could have governed it never knew it existed in that role. This is the core problem with tools that started as workarounds and quietly became infrastructure.
Leadership tends to see the tools they commissioned and miss the ones that grew. The visible portfolio is the planned one. The risk concentrates in the unplanned portfolio: the shadow IT no one mapped, the spreadsheets that became systems, the AI-built apps that spread faster than any review process can track. A tool you do not know is running operations is a tool you cannot govern, and that is exactly the position most exposure hides in.
How do you close the governance gap on tools you already depend on?
You close the gap by treating the tool as the production system it has already become, which means finding it, scoring its exposure, and rebuilding the missing controls into it instead of around it. The work starts with an inventory. You cannot govern what you have not located, so the first step is mapping which tools run real operations, who uses them, what data they touch, and what breaks if they stop. That map usually surprises the people who commissioned it.
From there, the work is to add the four controls in order of exposure. Access control comes first, so the tool can tell users apart and limit each to what their role requires. An audit trail comes next, so every consequential action leaves a record. Validation at the point of entry stops bad data before it spreads. And a named owner closes the loop, because a tool with an accountable owner stays governed after the project ends. Retool gives this a head start because access control, audit logging, and source control are part of the platform instead of something bolted on later, which is why a governed rebuild on it is faster than rebuilding the same controls from scratch.
This is the work Stackdrop does for regulated and multi-region operations. At Saxo Bank, a regulated financial institution, replacing fragmented creative workflows with a governed internal platform built on Retool cut median time to market by 78.3%, from 310 hours to 67, because governance removed the guesswork instead of adding overhead. At Pico Clinics, unifying clinic management across North America and Europe into one governed platform brought consistent consent handling and records under a single auditable system, where regional compliance requirements had previously varied clinic by clinic. The pattern in both is the same: the controls are what made the tool safe to depend on, and building them in was faster than living with the risk. If a tool already runs your operations, the practical next step is a governance review, and you can talk to Stackdrop about an existing tool before the gap surfaces on its own. For teams evaluating a low-code build, the security and compliance checklist for CTOs covers the controls to require from the start.

Frequently asked questions
How do you find the ungoverned tools already running your operations?
Start by following the work, not the software list. Ask each operational team which spreadsheets, scripts, admin panels, or AI-built apps a core process would stop without, then check which of those have an owner, an access model, and an audit record. The tools that fail those checks are the ungoverned ones, and they are usually the ones that never appeared on any IT inventory because they were built as conveniences, not systems.
Is a vibe-coded or AI-built tool ever safe for production?
Yes, if it is governed like any other production system. The risk in a vibe-coded tool comes from missing controls, not from the fact that AI generated the code. A tool built or rebuilt with role-based access control, an audit trail, validation at the point of entry, and a named owner can run real operations safely. The afternoon version that hardcodes credentials and skips access control is the one that should not go near production.
What is the first step to governing an existing tool?
Name an owner and run an access review. Before anything is rebuilt, someone needs to be accountable for the tool, and you need to know who can currently do what inside it. That single review usually surfaces the most urgent exposure, an admin login everyone shares or a credential sitting in plain text, and it gives you the basis for deciding whether to harden the existing tool or rebuild it as a governed system.
Does every internal tool need this level of governance?
No. A tool needs governance in proportion to what depends on it. A personal calculation that affects no one but the person running it does not need an audit trail. The moment a tool moves money, changes a customer or patient record, feeds a regulated report, or becomes the only way a process can run, it has crossed into production and needs the controls a production system carries. The test is the role the tool plays, not its size.
How is this different from shadow IT?
Shadow IT describes software adopted outside the IT function's visibility, and ungoverned internal tools are one form of it. The distinction worth drawing is that these tools are not unauthorised commercial apps; they are things the business built for itself and never reviewed as systems. They carry the same exposure as shadow IT with an added twist: because the business made them, it tends to trust them more, which is exactly why they grow load-bearing without scrutiny.
