Steve Yegge
4da8caef24
Migrate to Viper for unified configuration management (bd-78)
- Add Viper dependency and create internal/config package
- Initialize Viper singleton with config file search paths
- Bind all global flags to Viper with proper precedence (flags > env > config > defaults)
- Replace manual os.Getenv() calls with config.GetString/GetBool/GetDuration
- Update CONFIG.md with comprehensive Viper documentation
- Add comprehensive tests for config precedence and env binding
- Walk up parent directories to discover .beads/config.yaml from subdirectories
- Add env key replacer for hyphenated keys (BD_NO_DAEMON -> no-daemon)
- Remove deprecated prefer-global-daemon setting
- Move Viper config apply before early-return to support version/init/help commands
Hybrid architecture maintains separation:
- Viper: User-specific tool preferences (--json, --no-daemon, etc.)
- bd config: Team-shared project data (Jira URLs, Linear tokens, etc.)
All tests passing. Closes bd-78, bd-79, bd-80, bd-81, bd-82, bd-83.
Amp-Thread-ID: https://ampcode.com/threads/T-0d0f8c1d-b877-4fa9-8477-b6fea63fb664
Co-authored-by: Amp <amp@ampcode.com>
2025-10-23 17:30:05 -07:00
..
2025-10-21 13:59:19 -07:00
2025-10-20 21:08:49 -07:00
2025-10-21 20:38:35 -07:00
2025-10-22 11:30:57 -07:00
2025-10-20 21:08:49 -07:00
2025-10-21 00:29:50 -07:00
2025-10-23 14:14:22 -07:00
2025-10-23 14:14:22 -07:00
2025-10-22 13:59:58 -07:00
2025-10-22 13:59:58 -07:00
2025-10-22 13:59:58 -07:00
2025-10-22 13:59:58 -07:00
2025-10-20 21:08:49 -07:00
2025-10-22 13:59:58 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-22 23:05:00 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-17 13:50:20 -07:00
2025-10-20 21:08:49 -07:00
2025-10-17 17:40:16 -07:00
2025-10-23 10:25:13 -07:00
2025-10-23 10:25:13 -07:00
2025-10-21 23:43:04 -07:00
2025-10-21 20:34:37 -07:00
2025-10-23 10:58:35 -07:00
2025-10-23 10:58:35 -07:00
2025-10-15 17:51:09 -07:00
2025-10-21 22:18:22 -07:00
2025-10-21 19:53:27 -07:00
2025-10-20 21:08:49 -07:00
2025-10-23 17:30:05 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-22 12:24:08 -07:00
2025-10-22 12:24:08 -07:00
2025-10-20 15:04:33 -07:00
2025-10-18 18:21:17 -07:00
2025-10-21 14:10:26 -07:00
2025-10-20 21:08:49 -07:00
2025-10-21 14:56:18 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-15 17:06:59 -07:00
2025-10-18 00:37:27 -07:00
2025-10-16 18:06:53 -07:00
2025-10-20 21:08:49 -07:00
2025-10-20 21:08:49 -07:00
2025-10-22 17:59:06 -07:00
2025-10-23 14:26:40 -07:00
2025-10-22 23:05:00 -07:00
2025-10-22 23:05:00 -07:00