{"version":"2.1.246","anchor":"plugin-hook-noun-machinery-rebuilt-around-a-shared-state-rec","canonical_anchor":"plugin-hook-noun-machinery-rebuilt-around-a-shared-state-rec","heading":"Plugin hook noun machinery rebuilt around a shared state record","tier":"internal","area":"Plugins","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.246\/e\/plugin-hook-noun-machinery-rebuilt-around-a-shared-state-rec","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.246","markdown":"### Plugin hook noun machinery rebuilt around a shared state record\n\nPlugin hook machinery was rebuilt around plain state with identical behaviour and errors.\n\n**What**\n\nThe per-plugin closure that assembled hook objects and dispatched interface calls was replaced by a plain state record plus free functions. Behaviour and error text are unchanged, including the refusal to call a hook object from a wildcard-registered creation step.\n\n**Evidence**\n\n`is not callable from an engine.create step registered through on(\"*\"); hook engine.create by name to compose nouns`\n\n- Area: Plugins\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 0\/5"}