SubscriptionManager tracked client-to-tag routing but never called MxAccessClient.SubscribeAsync to create the actual COM subscriptions, so OnDataChange never fired. Now creates MxAccess subscriptions for new tags and disposes them when the last client unsubscribes. All 17 integration tests pass. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>