{"version":"2.1.248","anchor":"plugin-forwarding-exposes-its-state-and-outcome-to-callers","canonical_anchor":"plugin-forwarding-exposes-its-state-and-outcome-to-callers","heading":"Plugin forwarding exposes its state and outcome to callers","tier":"internal","area":"Plugins","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248\/e\/plugin-forwarding-exposes-its-state-and-outcome-to-callers","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248","markdown":"### Plugin forwarding exposes its state and outcome to callers\n\nPlugin forwarding to a cloud session now reports its state and why a run was skipped.\n\n**What**\n\nThe controller that forwards plugins to a cloud session now reports state changes and outcomes to callbacks, tracks why a run was skipped, and emits the outcome before marking the run skipped. Telemetry events are unchanged.\n\n**Details**\n\n- All state changes go through a single setter.\n- A new accessor returns the skip reason, for cases where the whole set was refused or there was nothing to forward.\n\n**Evidence**\n\n`tengu_cloud_plugins_skipped`\n\n- Area: Plugins\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 2\/5"}