chain homotopy equivalence between mapping cone complexes

Given continuous maps $f_i : X_i \to Y_i$ ($i=1, 2$) we may consider the singular chain cocomplexes $$C^n(Y_i) \oplus C^{n-1}(X_i)$$ with boundary operator: $$(u^n, v^{n-1}) \mapsto (-\delta u^n, f_i^* u^n + \delta v^{n-1} ).$$ (where the $\delta$'s are the usual coboundary operators in the correct dimension over the correct spaces). Suppose that we have a commutative diagram:

\begin{equation} \label{} \begin{array}{ccccccccccccccccccccccccccccccc} X_1 & \overset{f_1}{\longrightarrow} & Y_1 \\ \scriptstyle{\alpha \Big\downarrow\phantom{\alpha}} && \scriptstyle{\phantom{\beta} \Big\downarrow \beta} \\ X_2 & \overset{f_1}{\longrightarrow} & Y_2 \\ \end{array} \end{equation}

Then $\alpha$ and $\beta$ induce a chain map between the mapping cone cocomplexes of $f_2$ and $f_1$ (easy to verify).

My question is: what are reasonable topological conditions on $\alpha$, $\beta$ and $f_i$ in order that the induced map on the cone cocochain complexes is a homotopy equivalence?

Consider for example the case $X_1 = X_2$, $f_1 = f_2 = f$, $Y_1 = Y_2$. My intuition tells me that $\alpha$ and $\beta$ should be homotopy equivalences, and that there exist chain homotopies $H_\alpha$ and $H_\beta$ between $\alpha$ ($\beta$) and the identity such that: $$H_\beta(f(x) , t) = f \circ H_\alpha(x , t).$$ But.. doing the computations, we see that this is not true! Indeed, let $T^\alpha$ and $T^\beta$ cochain homotopies induced by the homotopies $H_\alpha$ and $H_\beta$: $$\alpha^*(u^n) - u^n = \delta T^\alpha u^n + T^\alpha \delta u^n$$ (similarly with $\beta$) and let's define the chain homotopy: $$T(u^n, v^{n-1}) := (T^\beta u^n, T^\alpha v^{n-1}).$$ Then, it is easy to calculate that: $$\delta T(u^n, v^{n-1}) + T\delta(u^n, v^{n-1}) = (\beta^* u^n - u^n, -(\alpha^* v^n - v^n) - (T^\alpha f^* u^n + f^* T^\beta u^n)) \ne (\beta^* u^n - u^n, \alpha^* v^n - v^n)$$

Note that, with our hypotheses: $T^\alpha f^* u^n = f^* T^\beta u^n$. This seems to imply that there is simply a sign error.. but it is not so easy to overcome this difficult