Greetings,
Here is a short snippet that seems (to me) to give incorrect answers. I get the expected answer for u (i.e., A^{a}) but for v I was expecting B^{a} but instead I get B^{a} + B^{a} + B^{a}. That seems incorrect to me. I might also note that if I comment out the LaTeXForm property for B{#} then I get the expected results for both u and v.
Cheers,
Leo
{a,b,c,d,e,f,g,h#}::Indices.
B{#}::LaTeXForm{"{B}"}.
{A^{a},B^{a}}::Weight(label=eps,value=0).
def truncate (obj,n):
    ans = Ex(0)
    for i in range (0,n+1):
       foo := @(obj).
       bah = Ex("eps = " + str(i))
       keep_weight (foo, bah)
       ans = ans + foo
    return ans
u := A^{a}.
v := B^{a}.
u = truncate (u,2);
v = truncate (v,2);