Opentype insufficiency about mark (mark to base)

In my Arabic font project I use cursive attachments.
And i decompose mark and base
Bases moves upper when adding new characters generally.
Marks moves upper with base glyphs too. Because we can only use mark to base value.
When base moves upper marks moves upper normaly.
I want to immobilize marks under baseline.
Ekran görüntüsü 2022-10-28 010031.png
i pointed marks with orange

  1. line is what i want to
  2. line is what happens now.

I can’t come up with a solution. I will ask on twitter.

I received a reply on twitter from John Hudson:

Only contextually: you have to adjust the mark down based on the context of the preceding and following glyph(s). @simoncozens has tools to help with this.

You might want to contact Simon or post at typedrawers.com.

And another promising reply from Kamal Mansour:

There’s a relatively straightforward solution. Create a variant of each lower mark that has NO anchor, but is naturally positioned at the desired level below the baseline. When you find the context of [Dal, initial Beh, lower_mark], replace the mark with the fixed-position mark.