Stage 1 — Prompt versioning (git or vendor)
**The principle:** Every prompt has a version. Changes create new versions. Old versions remain accessible. Rollback is one config change away.
**Approach A — git-native:** Prompts as `.txt` / `.md` / `.yaml` files in your application repository. Per GitHub's docs at github.com, commit history is your version history. Pros: free, integrated with code review, deploys with code. Cons: hard to test prompts in isolation from code; non-engineers can't edit.
**Approach B — prompt-management vendor:** Per LangSmith at docs.langchain.com and Promptlayer at promptlayer.com, vendor platforms provide versioned prompt storage + API for retrieving versions at runtime + UI for non-engineers. Pros: prompt evolution decoupled from code deploys; non-engineers can iterate. Cons: $/month + vendor lock-in + new failure mode (vendor down = your prompts inaccessible).
**Recommendation:** Per Anthropic's prompt engineering guide at docs.anthropic.com, start git-native. Migrate to vendor only when non-engineers need to iterate independently. The tooling tax is real.