I heard this secondhand from a colleague who somehow ended up with one of the F6 cubesats sitting on an endtable in his office, but my understanding was that formation flying wasn't really what killed F6. Over the planned mission duration the satellites wouldn't have drifted apart too much, and even without thrusters there's tricks you can use to tweak orbital periods to keep them lined up. Even that is a moot point, since for F6 they didn't need to be lined up, a cluster was acceptable.
The main problem came from the 4th F in F6, fractionated. The goal was to create a heterogenous network of satellites, built by a whole litany of manufacturers without even a common bus. That ended up being a solution in search of a problem. It made integration way more complex, which was exacerbated by the number of independent participants. The project spent a lot of time working on shared SDKs that would work across the constellation. In practice, there weren't really enough benefits over homogeneous constellations to make all the extra effort worthwhile. Instead of having 5 satellites with cameras beam their images to another satellite that determines which images are cloudy, it's easier to just have each satellite running identical code so it can figure out for itself which images are cloudy. On top of that, a homogenous network has advantages wrt survivability, manufacturing costs, maintenance, etc
The main problem came from the 4th F in F6, fractionated. The goal was to create a heterogenous network of satellites, built by a whole litany of manufacturers without even a common bus. That ended up being a solution in search of a problem. It made integration way more complex, which was exacerbated by the number of independent participants. The project spent a lot of time working on shared SDKs that would work across the constellation. In practice, there weren't really enough benefits over homogeneous constellations to make all the extra effort worthwhile. Instead of having 5 satellites with cameras beam their images to another satellite that determines which images are cloudy, it's easier to just have each satellite running identical code so it can figure out for itself which images are cloudy. On top of that, a homogenous network has advantages wrt survivability, manufacturing costs, maintenance, etc