Smell #1: Ambiguous Goal
Ambiguous Goal: A vague or under-specified prompt that forces the AI assistant to make critical architectural or design decisions without human input.
Symptoms
How to recognize this smell in your workflow:
- [ ] You prompted something like "build authentication" or "add task filtering."
- [ ] You cannot explain why a specific implementation approach (e.g., JWT vs. Sessions) was chosen.
- [ ] The AI made architectural choices (e.g., database schema, state management) that you didn't explicitly request.
- [ ] Multiple valid interpretations of your prompt were possible, and the AI just "picked one."
Self-Assessment
If you checked 2+ items, you are likely suffering from Ambiguous Goal.
Example
Bad Pattern (Vibe Prompt)
❌ "Add user authentication to my app."
What happens: AI decides to use JWT, stores tokens in localStorage (insecure), implements no token revocation, and uses a weak password hashing algorithm. You now own an authentication system you didn't design and that may not be secure.
Clean Alternative (Clean Prompt)
✅ "I'm implementing JWT authentication with the following requirements:
- Use httpOnly cookies for token storage.
- Implement 24-hour expiry with refresh tokens.
- Use bcrypt with cost 12 for password hashing.
Implement the token generation and validation functions."
What happens: You made the engineering decisions. The AI performed the high-speed implementation of your design.
Debt Impact
This smell contributes to:
| Debt Category | Impact | |---------------|--------| | 🏗️ ARCH | AI creates a "random" architecture that doesn't fit your project's long-term goals. | | 🧠 KNOW | Because you didn't design it, you don't understand it (Comprehension Debt). |
How to Fix
- Architecture Audit: Identify the modules where AI made the design decisions.
- Document Intent: Retroactively create an ADR (Architectural Decision Record) for those modules.
- Refactor for Ownership: Rewrite critical logic to match your intended patterns.
How to Prevent
- Design Before Prompting: Never type a prompt until you know what the architecture should be.
- Use the Clean Prompt Template: Always include "Design Decisions" in your prompts (Chapter 13).
- Request Rationale: Ask the AI to explain why it chose a specific implementation before you accept it.
Related Smells
- Smell #2: Prompt Drift — Vagueness leads to drifting.
- Smell #6: Magic Black Box — Ambiguous goals produce opaque logic.
Book Reference
This smell is the starting point of the disaster in Chapter 1: First Prompt Magic.
- Part I: How vagueness creates initial debt.
- Part IV: How to implement Human-Led Design.