Observation
What each app does on launch
This is the finding in one sentence: the prompt-only branch opens to a list of entries. The intent-driven branch opens to today's blank page.
That single difference — what the user sees first — reveals everything about how each agent interpreted the prompt.
The prompt-only branch built a filing cabinet
Entries can be searched, edited, deleted, and exported. It includes a custom markdown parser (~80 lines) written from scratch. The UI centers on a list of entries with management controls. The summary acknowledged the result was "over-featured relative to the terse prompt."
This is a competent note-management app. It happens to store entries with dates. But the product question it answers is: "How do I organize my notes?"
The intent-driven branch built a blank page
The app opens to today's entry with the cursor already in the textarea — zero clicks to start writing. Auto-save with debounce replaces explicit save buttons. No search. No tags. No delete. It uses marked.js from CDN instead of writing a custom parser. The agent described the product as "closer to a blank notebook than to Notion."
The data model tells the story too. The prompt-only branch allows multiple entries per day with timestamps — a note-taking model. The intent-driven branch enforces one entry per day, keyed by date — a daily practice model.
Drift Analysis
Practice-to-tool drift (primary)
The prompt-only branch drifted from "journal for daily reflections" toward "markdown note app." Search, edit, and delete are note-management features, not journaling features. You don't search a journal. You don't delete a reflection. You write today's entry and close the book.
This is a textbook case of practice-to-tool drift: a prompt describing a human ritual gets reframed as an information management tool. The implementation optimizes for managing entries instead of supporting the lived activity.
Product-identity drift (secondary)
The product shifted from "journal" (a practice) to "note-taking app" (a tool category). The right-looking feature set was built, but organized around the wrong concept.
Legitimate Divergence
- Markdown rendering approach: Custom parser (~80 lines) vs marked.js from CDN. The artifact didn't specify rendering implementation. Both are valid.
- Visual styling: Different color schemes and typography. Neither constrained by the artifact beyond "minimal."
- Entry navigation: Sidebar list vs date-based lookup. Different valid approaches to accessing past entries.
Result
The hypothesis held cleanly. The prompt-only branch added management features consistent with a note-taking app. The intent-driven branch optimized for the daily writing ritual and resisted management overhead.
The most telling evidence is what each app does on launch. The prompt-only branch shows you your files. The intent-driven branch shows you today's blank page with a blinking cursor.
One app asks: "Which note do you want to work on?" The other asks: "What happened today?"
The difference between a note manager and a journal is what the app assumes you came to do.
Principle
Prompts that describe practices — "daily reflections," "meditation timer," "reading log" — are at high risk of being implemented as feature-rich tools rather than ritual-supporting surfaces. Intent discovery can distinguish between "what features does this category of app usually have?" and "what is this specific app actually for?" — the difference between a filing cabinet and a blank page.
Follow-Up
- Would real users prefer the ritual-optimized version or the management-capable version? They might want search after 30 days of entries.
- Does the practice-to-tool drift pattern recur with "workout log" or "meditation tracker"?
- Is the one-entry-per-day model the right default, or is it too restrictive for people who reflect more than once?
Limitations
- Both branches used the same model family. The tendency to add management features might be model-specific.
- "Journal" is genuinely ambiguous — some people do search their journals. The drift classification assumes the "daily ritual" interpretation is correct, but a case could be made for the note-management interpretation.
- Single run per branch. The prompt-only agent might resist management features on another run.
- The intent-driven branch received more structured input, which could contribute to its restraint through context volume rather than intent structure.
- We're comparing the agents' *interpretations* of "journal." We don't know which interpretation actual journal users would prefer without user testing.