Gemini CLI PR fixes settings migration clobbering ${VAR} environment placeholders
villahernandez-coder · ghdev · 2026-10-22
PR #29867 on google-gemini/gemini-cli fixes a bug where automatic migration of deprecated settings overwrote ${VAR} / ${VAR:-default} environment variable placeholders on disk with their expanded runtime values whenever they shared a subtree with a migrated key.
How it's fixed
- LoadedSettings.setValue gains an optional originalValue parameter (cloned via structuredClone) so migrations can update the runtime-expanded settings and the persisted raw originalSettings independently without breaking existing callers.
- migrateDeprecatedSettings and migrateExperimentalSettings now evaluate conditions on the expanded settings while applying edits to shallow copies of the raw file, across all deprecated keys including tools.approvalMode and several experimental settings.
- Prevents writing empty agents.overrides when only experimental.plan is migrated.
- Adds unit and regression tests covering placeholder preservation in same-subtree and cross-subtree migrations.
More from coding & agent
- OpenJet claims Qwen3.8-27B coding runs 1.9x faster than llama.cpp on one RTX 3090 — JeremyCMorgan · 2026-10-23
- Building an autonomous SEO agent in Hermes with three skills: programmatic pages, Keywords Everywhere, DataForSEO — EXM7777 · 2026-10-23
- Building a sports betting AI agent with onchain execution and human approval by default: architecture and lessons — Dry-Comfortable-2678 · 2026-10-23
- Capy 0.5.0 lets Claude Pro/Max subscribers reuse their plan quota, adds OIDC cloud access — garrytan · 2026-10-23
- You.com CEO Richard Socher: legacy code is human slop, let AI clean it up — RichardSocher · 2026-10-23
- Let agents design a single-line glance component so you can track them from the sidebar — blixt · 2026-10-23