{"version":"2.1.236","anchor":"global-config-writes-now-pass-the-storage-handle-explicitly","canonical_anchor":"global-config-writes-now-pass-the-storage-handle-explicitly","heading":"Global config writes now pass the storage handle explicitly","tier":"internal","area":"Config Storage","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236\/e\/global-config-writes-now-pass-the-storage-handle-explicitly","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236","markdown":"### Global config writes now pass the storage handle explicitly\n\nSettings writes now name their storage, so config can follow whichever backend a session uses.\n\n**What**\n\nMany settings writes now name the storage they are writing to instead of assuming the local config file. This is what allows configuration to follow whichever storage backend a session uses.\n\n**Details**\n\n- Converted call sites include onboarding completion, install method, OAuth role storage, clearing the primary API key, iTerm2 and tmux setup flags, overage consent, the remote dialog seen flag, Apple Terminal setup, the first-token date, expanded todo display and the fullscreen upsell counter.\n- Which storage the handle actually points at is decided by the `tengu_hover_rest` flag.\n\n**Evidence**\n\n`await sn((d) => ({ ...d, installMethod: \"global\" }), t)`\n\n- Flag `tengu_hover_rest`: Off in both readings (read for one account on one subscription tier against v2.1.236; this account: off, anonymous baseline: off, compiled default: off)\n- Area: Config Storage\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 3\/5"}