Trying to understand how asset dependency works

Based on the Addressables doc
https://docs.unity3d.com/Packages/com.unity.addressables@1.22/manual/AssetDependencies.html

It says

If you use the same asset both in a scene and the Resources folder, then Unity makes copies of the asset when building rather than sharing a single instance. For example, if you use a material in a built-in scene and also use it in a prefab located in a Resources folder, you end up with two copies of that material in your build, even if the material asset itself isn’t in the Resources folder. If you then mark that same material as Addressable, you end up with three copies. Files in the project’s StreamingAssets folder can never be referenced by assets outside that folder.

The line that I would like to highlight is

If you use the same asset both in a scene and the Resources folder, then Unity makes copies of the asset when building rather than sharing a single instance.

So I want to test about the above statement, so I did the following setup:

  1. Created a ScriptableObject class name SOTag and MonoBehaviour component name TestScript

[CreateAssetMenu(menuName = “SOTag”)]
public class SOTag : ScriptableObject
{
public string Id;
}

public class TestScript : MonoBehaviour
{
public SOTag SOTag;

private void Start()
{
    SOTag resTag = Resources.Load<SOTag>("SO_Tag_1");

    if (resTag != null)
    {
        Debug.Log($"Script compares with Resources: {SOTag == resTag}");
    }
    else
    {
        Debug.LogWarning($"Resources Tag is NULL!");
    }
}

}

  1. Created an asset of SOTag and place it in Resources folder
  2. Created an GameObject and attach TestScript component onto it
  3. Drag the SOTag asset from Resources to TestScript component public field.
  4. Run the editor.

The result (Line 7) shows that both SOTag instances are equal.
(EDIT: I’ve tested on an actual build (iOS/Android) and the result is the same)

Did I misunderstand what the doc says? I thought Unity suppose to make a copy of the assets that are located in Resources? So I was expecting both are not the same asset anymore when making an equal check.

Did anyone can explain to me how this thing works?