Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce RTX 2070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 432.00
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-08-06 23:23, hash: rB21fec9513969
Worked: Not in any version of blender with library overrides.
Short description of error
The presence of a driver creates a "no action" track in the NLA editor that cannot be removed because technically it counts as animation data. If this track exists, it will overwrite tracks in linked files
Exact steps for others to reproduce the error
Delete all objects in the default scene besides the cube. Save the file.
Open a new file and link the main scene collection from the file you made before. Create a library override using the outliner -> Add library override heirarchy. Delete the linked instance from the scene and add an animation to the library-override (I made the cube move up and down), pushing it down into the NLA editor.
Save this new file and reopen it, or press file->revert. Notice that the NLA editor has kept animation data intact.
Now reopen the first file with only the cube in it and add a driver. when you reopen the second file, the NLA editor will be blank. If you close the second file, open the first, delete the driver in the first file, press "delete empty animation data" in the NLA editor, and revert or reopen the second file, the NLA strip information will return.
I have attached two files, with nla_test_cube.blend linked into nla_test.blend. Notice the driver on scale in nla_test_cube.blend. If it's deleted before opening nla_test.blend, nla_test.blend will open with NLA data intact. Otherwise, it will obliterate NLA data.
This is important if characters with drivers (which many of the more complicated rigs use) are used in conjunction with the NLA editor. It makes no difference to other kinds of animations that are not pushed into NLA, as far as I can tell.