There, I fixed it (with tape) Challenge:
Given a string only containing upper- and/or lowercase letters (whichever you prefer), put tape horizontally to fix it. We do this by checking the difference of two adjacent letters in the alphabet (ignoring wrap-around and only going forward), and filling the space with as much TAPE/tape as we would need.

Example:
Input: abcmnnnopstzra
Output: abcTAPETAPETmnnnopTAstTAPETzra
Why?

Between c and m should be defghijkl (length 9), so we fill this with TAPETAPET;
Between p and s should be qr (length 2), so we fill this with TA;
Between t and z should be uvwxy (length 5), so we fill this with TAPET.

Challenge rules:

The difference only applies forward, so no tape between zra.
It is possible to have multiple of the same adjacent letters like nnn.
You are allowed to take the input in any reasonable format. Can be a single string, string-array/list, character-array/list, etc. Output has the same flexibility.
You are allowed to use lowercase and/or uppercase any way you'd like. This applies both to the input, output, and TAPE.
It is possible no TAPE is necessary, in which case the input remains unchanged.

General rules:

This is code-golf, so the shortest answer in bytes wins.
Don't let code-golf languages discourage you from posting answers with non-codegolfing languages. Try to come up with an as short as possible answer for 'any' programming language.
Standard rules apply for your answer, so you are allowed to use STDIN/STDOUT, functions/method with the proper parameters and return-type, full programs. Your call.
Default Loopholes are forbidden.
If possible, please add a link to a test for your code.
Also, please add an explanation if necessary.


Test cases:
Input:  &quot;abcmnnnopstzra&quot;
Output: &quot;abcTAPETAPETmnnnopTAstTAPETzra&quot;

Input:  &quot;aza&quot;
Output: &quot;aTAPETAPETAPETAPETAPETAPEza&quot;

Input:  &quot;ghijk&quot;
Output: &quot;ghijk&quot;

Input:  &quot;aabbddeeffiiacek&quot;
Output: &quot;aabbTddeeffTAiiaTcTeTAPETk&quot;

Input:  &quot;zyxxccba&quot;
Output: &quot;zyxxccba&quot;

Input:  &quot;abccxxyz&quot;
Output: &quot;abccTAPETAPETAPETAPETAPExxyz&quot;

Input:  &quot;abtapegh&quot;
Output: &quot;abTAPETAPETAPETAPETtaTAPETAPETAPETApeTgh&quot;

Input:  &quot;tape&quot;
Output: &quot;taTAPETAPETAPETApe&quot;
Jelly, 13 bytes

OI’“¡ʂƁ»ṁ$€ż@


Try it online!

Explanation


OI’“¡ʂƁ»ṁ$€ż@ – Full program. Take a string as a command line argument.
O             – Ordinal. Get the ASCII values of each character.
 I’           – Get the increments (deltas), and subtract 1 from each.
          €   – For each difference I...
   “¡ʂƁ»ṁ$    – Mold the compressed string "tape" according to these values.
                Basically extends / shortens "tape" to the necessary length.
           ż@ – Interleave with the input.