Skip to content
Work Vultures

AI & Development ·

Vibe Coding in 2026: Seven Checks Between a Demo and a Real Product

Follow an illustrative booking portal through data ownership, permissions, failure testing, deployment, and the handoff that makes a prototype operable.

Developer working with source code on two monitors
Illustrative photograph · Pexels

A working demonstration starts the investigation

Vibe coding makes a compelling promise: describe an application, inspect the result, and keep asking for improvements until the screen resembles your idea. In 2026, that workflow can help a small business explore a booking system or prototype a customer portal quickly. The difficult decision arrives when someone asks to put real customer information into the prototype. A successful demonstration shows that one path worked under particular conditions. It leaves many operating questions unanswered.

Consider an illustrative appointment portal for a repair business. A visitor chooses a service, picks an available slot, and receives a confirmation. The generated interface looks complete, but the business still needs to know what happens when two visitors request the last slot, a confirmation email fails, or an employee leaves the company. These examples are planning scenarios, not observations from a Work Vultures deployment. Their purpose is to turn an attractive prototype into a reviewable product decision.

Check one: describe the promise before reviewing the code

Write the customer promise as a short sequence of outcomes. For the repair portal, the promise might be that a confirmed appointment reserves one available slot, the customer can find the reference later, and staff can change the appointment with an explanation. That description is more useful than a list of screens. It gives a reviewer something independent of the generated implementation against which to judge behavior.

Next, identify the exceptions that affect that promise. An interrupted connection must not create two bookings. An expired browser session must not expose another customer's details. A canceled appointment should release capacity according to the business rules. Record the expected result for each situation before generating more code. Otherwise, the same assistant can produce both an implementation and a test that share the same mistaken interpretation.

The practical handoff artifact is a decision table containing the starting state, action, expected result, and owner of the rule. A business representative should approve the meaning of an appointment being confirmed. A developer should explain how that meaning is protected when requests overlap. A designer should check whether the visible message communicates the actual state. These are different reviews, even when one person performs several roles.

Check two: make the data model explainable

Ask for a plain explanation of every record that the application stores. In the example, a customer, a service, an appointment, a staff account, and an activity entry are separate concepts. Determine which fields are necessary and which appeared because a template included them. A prototype that collects a birth date without a business reason adds a handling obligation without improving the booking experience. Removing an unnecessary field can be the most effective technical change.

Trace one appointment from creation to cancellation. Identify which record represents the reservation, which field identifies its status, and which operation makes a slot unavailable. If the explanation depends on a browser variable being trusted as the final authority, investigate further. The visible screen can suggest availability, while a trusted application component still needs to decide whether the reservation is valid at the moment it is committed.

Review the lifetime of the data as carefully as its creation. Decide how a customer corrects a mistake, how staff find an earlier change, and how old records are handled. Keep backup and restoration requirements attached to specific records. A folder described as a backup is not yet evidence that appointments can be recovered consistently. The team needs a documented recovery exercise with a known starting point and an observable outcome.

Check three: review authority separately from appearance

A hidden administration button does not establish who may use the corresponding operation. List the actions available to an anonymous visitor, a customer, a scheduler, and an administrator. Then check the trusted authorization decision for each action. A customer changing the identifier in a request should still be limited to their own appointment. An employee with scheduling access should not automatically receive permission to create new administrators.

OWASP's Application Security Verification Standard provides a structured set of application security requirements. It can support a scoped review, but mentioning the standard does not certify a generated product. Select the requirements relevant to the application and record the verification evidence. A booking portal and a public brochure website have different exposure. Treating them as equivalent encourages either excessive work or a serious gap in the review.

Credentials deserve an explicit ownership check. Establish who controls the source repository, deployment account, email service, database, and recovery access. Keep secrets outside browser code and outside material intended for public sharing. A quick prototype often relies on the creator's personal accounts. Before launch, transfer the appropriate control to the organization and confirm that another authorized person can maintain the service if the creator is unavailable.

Check four: test the inconvenient paths

An illustrative review might contain twenty-four scenarios: eight ordinary journeys, eight invalid or expired states, and eight recovery situations. Suppose seventeen pass and seven fail. The pass rate is approximately seventy-one percent, but that percentage alone cannot support a launch decision. A typo in an optional display field and an unauthorized appointment change have different consequences. Report the failures by their effect on the customer promise.

Include repeated submission, a refresh during saving, a slow response, an expired session, an unavailable dependency, and two competing requests. Use clearly separated test accounts and recognizable sample records. When a test fails, preserve the relevant request, application response, and visible result. This makes the problem reproducible. A screenshot of a red message may be useful context, but it rarely explains whether the appointment was actually created.

Give the generated code a review that is independent of the prompt that produced it. Read the important change, inspect dependency choices, and ask why the failure case is handled in that location. A second model can suggest questions, but its agreement is not independent operational evidence. Where a change affects money, identity, or personal information, assign a person who can explain the relevant boundary and evaluate the proposed verification.

Check five: measure the complete development cycle

The time taken to generate an interface is only one part of delivery. Include clarification, review, testing, integration, deployment, and correction when comparing approaches. For a small prototype, an hour saved during scaffolding can be valuable. For a production service, an unexplained dependency may consume that saving later. A useful comparison follows a task until another person can understand and operate the result.

Use a bounded task for an experiment. Ask two approaches to implement the same appointment cancellation rule against the same acceptance criteria. Track elapsed review time and the number of unresolved defects, rather than counting lines of code. Do not infer organization-wide productivity from one exercise. Familiarity with the framework, the quality of the starting project, and the reviewer's experience can all change the result substantially.

Keep the comparison honest by preserving unsuccessful attempts. If the assistant needed several revisions to stop exposing another user's appointment, that history belongs in the evaluation. It can reveal an unclear requirement or a recurring implementation weakness. The point is to learn where assistance is reliable enough to reduce work. A polished final screenshot cannot explain how much supervision was necessary to get there.

Check six: make deployment reversible

Define how a release is identified and how it can be replaced by the previous known version. Check what happens to data when the application version changes. Reverting a web interface may be straightforward, while reverting an incompatible database change may require a different plan. Rehearse the sequence with sample data before the first live appointment. The exercise should demonstrate what an operator actually does during an interruption.

Create a compact operating note containing the deployment location, essential dependencies, contact owners, backup process, and initial diagnostic steps. Include the difference between a failed confirmation email and a failed booking. That distinction can prevent staff from creating a second reservation while trying to help a customer. An operating note should answer realistic questions without requiring someone to reconstruct the original conversation with the coding assistant.

Monitoring should follow the promise established earlier. Count failed booking attempts, conflicting reservations, and confirmation errors where those measures can be collected responsibly. A server being reachable is useful information, but it does not demonstrate that a customer can complete a booking. Choose alerts that lead to an action someone can take. An alert that nobody owns simply adds noise to the next investigation.

Check seven: hand over the reasoning

The final review should allow a colleague to explain the application's important decisions without opening the original chat. They should know which component decides availability, how access is checked, where a failed action is recorded, and how a release is recovered. Ask them to make a small change using the documentation. Their questions are evidence about the handoff, not an inconvenience to be removed from the evaluation.

NIST's AI Risk Management Framework offers a voluntary structure for considering AI risks across a lifecycle. For an assisted coding workflow, a practical application is to name the task, define supervision, measure results, and revisit the process after changes. The framework does not establish that a particular code generator is safe. It helps organize the questions a team needs to answer about its own use.

The decision to launch should rest on the application's behavior and the team's ability to operate it. A modest portal with understood limits can be a useful first release. A larger prototype with unclear authority can remain an experiment while those questions are resolved. Record the remaining limitations, the person responsible for each one, and the conditions for expanding use. That creates a path from rapid exploration to accountable delivery.

Methodology, evidence & limitations

Requirement-driven review of a fictional appointment portal. The twenty-four-case example and pass-rate arithmetic are illustrative; no commercial tool benchmark, customer deployment, or measured productivity result is claimed.

Prepared 27 October 2026 as an editorial synthesis and original worked analysis. No original customer interviews, site visits, specialist certification, or independently measured commercial result is claimed. Technical guidance and service behavior can change; consult the linked publication before applying a specific requirement.

Primary references

Suggest a correction with the article title, disputed statement, and supporting source.

Continue exploring

All articles →