Why version naming becoming more and more complex? What a reasons to increase its complexity?

Another example:

pamac update
Preparing...
Synchronizing package databases...
Refreshing core.db...                                                                                                                                                                        
Refreshing extra.db...                                                                                                                                                                       
Refreshing community.db...                                                                                                                                                                   
Refreshing chaotic-aur.db...                                                                                                                                                                 
Warning: linux515: downgrading from version 5.15.rc6.211018.g519d819-1 to version 5.15-1                                                                                                     
Resolving dependencies...
Checking inter-conflicts...

To upgrade (5):
  mpd             0.23.3-1      (0.23.2-1)                    extra  876.0 kB
  openmpi         4.1.1-3       (4.1.1-2)                     extra  3.4 MB
  python-gobject  3.42.0-1      (3.40.1-2)                    extra  257.6 kB
  re2             1:20211101-1  (1:20210901-1)                extra  178.3 kB
  zenity          3.41.0-1      (3.32.0+55+gd7bedff-1)        extra  3.1 MB
To downgrade (1):
  linux515        5.15-1        (5.15.rc6.211018.g519d819-1)  core   102.1 MB

Total download size: 110.0 MB
Total installed size: 5.4 MB

Apply transaction ? [y/N] 

Upgrading from beta (rcX) to release version auto-interpreted as downgrade.