{"version":"2.1.223","anchor":"config-saving-reports-success-and-detects-compromised-state","canonical_anchor":"config-saving-reports-success-and-detects-compromised-state","heading":"Config saving reports success and detects compromised state","tier":"internal","area":"Internals","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.223\/e\/config-saving-reports-success-and-detects-compromised-state","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.223","markdown":"### Config saving reports success and detects compromised state\n\nConfig writes now report whether they actually succeeded, so a failed or compromised save isn't treated as done.\n\n**What**\n\nThe locked config-write helper now tells its caller whether the write actually succeeded, which is what lets the machine id path avoid handing out an id it failed to persist.\n\n**Details**\n\n- the helper returns a boolean instead of nothing\n- an `onCompromised` callback is passed into the lock and sets a flag\n- a no-op write is tracked separately, so an unchanged config still counts as success while a compromised lock does not\n\n**Evidence**\n\n`{ onCompromised: () => (o = !0) }`\n\n- Area: Internals\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 0\/5"}