| Metadata | Value |
|---|---|
| Status | Completed |
| Version | 1.0.0 |
| Last Updated | 2026-02-06 |
| Author | Sangeetha Grantha Team |
Standardise how environment variables and local configuration are defined, loaded, and documented so that secrets stay out of the repo and a single source of truth (e.g. tools.yaml, config/README.md) guides developers and tooling (Goose, IDE, CLI).
.env.development and scattered env usage risk leaking secrets and cause inconsistent behaviour across IDEs, Goose, and CLI.tools.yaml; actual values are set outside the repo (system env or a single gitignored config/local.env). Backend loads config/development.env then config/local.env; system env overrides.application_documentation/08-operations/config.md; local context in config/README.md.config/.env.development; ensure env files are gitignored (development.env, local.env, etc.).tools.yaml.config/development.env then config/local.env; system env overrides (ApiEnvironmentLoader, ApiEnvironment.kt).config/development.env (and optional local.env) as single dev env source; document in config/README.md.config/README.md documenting config directory, file roles, and single-source workflow.tools/bootstrap-assets/env/development.env.example for bootstrap/copy.application_documentation/08-operations/config.md with tools.yaml reference and local.env workflow.DatabaseConfigLoader.kt).config/..env.development; gitignore for config/development.env, config/local.env; tools.yaml for variable list; ApiEnvironmentLoader loading from config/development.env then config/local.env with system override; config/README.md; development.env.example template; ops config doc updates.DatabaseConfigLoader.kt using dotenv-kotlin. Aligned Vite configuration in vite.config.ts. Updated runbooks and quick-references to point to canonical configuration documentation.