     } else {
       sufficientCapacity = false
     }
+        
     if self.isUniqueNative && sufficientCapacity {
       return
     }
-
-    let totalCount = self.utf8Count + otherCount
+    
+    // If we have to resize anyway, and we fit in smol, we should have made one
+    _internalInvariant(totalCount > _SmallString.capacity)
 
     // Non-unique storage: just make a copy of the appropriate size, otherwise
     // grow like an array.

    self = result._guts
  }

  @inline(__always) // Always-specialize
  internal mutating func replaceSubrange<C>(
    _ bounds: Range<Index>,
    with newElements: C


  @inline(never) // slow-path
  private mutating func _foreignGrow(_ n: Int) {
    let newString = String(uninitializedCapacity: n) { buffer in
      guard let count = _foreignCopyUTF8(into: buffer) else {
       fatalError("String capacity was smaller than required")
      }
      return count
    }
    self = newString._guts
  }

  // Ensure unique native storage with sufficient capacity for the following
  // append.
  private mutating func prepareForAppendInPlace(
    totalCount: Int,
    otherUTF8Count otherCount: Int
  ) {
    defer {
