The update-major-tag workflow triggers on `release: published`, but semantic-release was only creating git tags (via @semantic-release/git) without creating actual GitHub Release objects. This meant the workflow never fired.