Option C provides the required configuration-management discipline. Development, staging, and production may legitimately use different models, prompts, plugins, permissions, or service endpoints, but those differences must be explicit, reproducible, and auditable rather than scattered across undocumented mechanisms.
Claude Code documentation follows the same configuration-as-code principle. Project-level configuration can live in source-controlled files such as .claude/settings.json, while project instructions are maintained in repository-level CLAUDE.md. Anthropic specifically distinguishes shared project settings from local developer configuration.
A introduces uncontrolled model changes and regression risk. B hides configuration in application logic and makes environment differences harder to review. D ignores the fact that environments often require deliberate differences—for example, production credentials or pinned release versions.
The correct strategy is therefore to define configuration centrally, pin compatibility-sensitive dependencies, record environment-specific overrides, review modifications through source control, and retain rollback history. Relevant Study Guide topics: configuration management, environment isolation, model versioning, prompt versioning, dependency management, reproducibility, and controlled deployment.
===============
Submit