Ucode-intel as unneeded

bor@tw:~> LANG=C zypper info --supplements ucode-intel
Loading repository data...
Reading installed packages...


Information for package ucode-intel:
...
Supplements    : [2]
    namespace:modalias(cpu:type%3Ax86*ven0000*)
    namespace:modalias(x86cpu:vendor%3A0000%3Afamily%3A*%3Amodel%3A*%3Afeature%3A*)

bor@tw:~> cat /sys/devices/system/cpu/cpu0/uevent
DRIVER=processor
MODALIAS=cpu:type:x86,ven0000fam0006mod003D:feature:,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000B,000C,000D,000E,000F,0010,0011,0013,0017,0018,0019,001A,001B,002B,0034,003A,003B,003D,006B,006F,0070,0072,0074,0075,0076,0079,007F,0080,0081,0085,0089,008C,008D,008F,0091,0093,0094,0095,0096,0097,0098,0099,009A,009B,009C,009D,009E,009F,00C0,00C5,00C8,00E1,00EB,00ED,00F0,00F1,00F3,00F6,00F9,00FA,00FB,00FD,00FF,0100,0101,0102,0103,0111,0115,0120,0121,0123,0124,0125,0127,0128,0129,012A,012B,012D,0132,0133,0134,0140,0165,016C,016E,017B,01AC,01AE,01AF,01B8,01C2,01F9,0202,024A,025A,025B,025C,025D,025F,0282

bor@tw:~> 

To my best knowledge zypper should consider Supplements when computing unneeded packages. It is possible that it misses namespace dependencies. If your CPU MODALIAS matches ucode-intel Supplements you may consider bug report.