It is generally understood that the sonority-related generalizations about English are only valid within a root-like domain and not the fully-inflected word (/-z, -d/ give rise to substantial contradictions of the generalizations that are possible without considering those affixes). Within un-inflected roots, affricates only have a superficial resemblance to being counterexamples because of the current IPA spelling convention, but in the early 80's and before when these generalizations were discussed, they were written as /ǰ, č/ and were clearly understood to be single segments. However, adze, quartz, yutz, Lodz do pose a problem (the latter two have demographically more-restricted distribution). They do invite the inference that English has a couple of marginal affricates /ts, dz/, and indeed words beginning with /<ts, tz/> are often so pronounced (tsatsiki, [tsaitgaist], tsetse though more frequently the latter is pronounced [titsi]). And then there is "six", which cannot be so rationalized. The resolution to such supposed problems
has generally been that alveolar obstruents enjoy an "extra" position in the coda, so that while [ɪŋk] is licit, *[aiŋk] is not: but both [ɪnt] and [aint] are (likewise *[mb, ŋg] as coda but [nd] is perfectly fine).
The root-level restriction explains not only the massive number of plurals and past tense forms which have otherwise impermissible coda clusters, and also handles supposed counterexamples with the -th suffix, see depth, breadth, width. The situation with theft, height might suggest a sonority-related adjustment, though you then have to buy into the idea that there is a velar fricative in height. Regardless of the status of [k] in "strength", the fricative in that suffix is simple outside the scope of the generalization.