Welcome to the list!

Kazakh has a limited consonantal assimilation that you might want to extend 
into a true harmony.
Which form of a grammatical ending is used depends not only on the vowel 
harmony rules, but on the final consonant.


Qazaq (back-vowel, unvoiced final)   --> Qazaqtar
Oezbek (front-vowel, unvoiced final) --> Oezbekter

Qyrghyz (back-vowel, voiced final)   --> Qyrghyzdar
Tuerkmen (front-vowel, voiced final) --> Tuerkmender

Basqa (back-vowel, vowel final)      --> Basqalar
Perishte (front-vowel, vowel final)  --> Perishteler

I could see a language extending this to create a simple voiced vs. 
unvoiced consonant harmony.