The problem is caused by pages that modify the URL by history.pushState(). It only modifies the display URL and the contents without a page reload.
So when you run a script at Tampermonkey you need to force a reload on that manipulation.
Note: if you only want to make the script not run when you navigate away from the subscriptions page then just change the @match statement to your @include.
// ==UserScript==
// @name YT pushState
// @namespace http://tampermonkey.net/
// @version 0.1
// @match *://*.youtube.com/*
// @grant none
// ==/UserScript==
window.history.__proto__.pushState = function(a, b, url) {
window.location.href = url;
}
if (window.location.href.match(/https?:\/\/www\.youtube\.com\/feed\/.*/)) {
console.log("Put main function here!");
} else {
console.log("Ignore this page");
}