{"version":"2.1.234","anchor":"a-failed-plugin-install-rolls-back-instead-of-leaving-a-half","canonical_anchor":"a-failed-plugin-install-rolls-back-instead-of-leaving-a-half","heading":"A failed plugin install rolls back instead of leaving a half-written cache","tier":"notice","area":"Plugins","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234\/e\/a-failed-plugin-install-rolls-back-instead-of-leaving-a-half","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234","markdown":"### A failed plugin install rolls back instead of leaving a half-written cache\n\nA failed plugin install rolls back instead of leaving a broken cached version behind.\n\n**What**\n\nPlugin extraction and version caching now wrap dependency install, manifest write and cache promotion in a single try\/catch with an explicit rollback, so a failure discards the staged directory rather than leaving a broken cached version behind.\n\n**Details**\n\n- The versioned-cache helper takes a `linkFarm` option derived from the plugin source; that branch depends on the existing plugin-cache predicate.\n\n**Evidence**\n\n`linkFarm`\n\n- Area: Plugins\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5"}