Hello,
All great questions. The "crs.305694.attribute" that you are seeing is actually the ID of the data source. Theoretically it should work if that is the proper Customer Attribute Data Source ID, but with your test of adding the attribute with the Data Source name and it functions properly, you have proven that to not be the case. We'd like to do a deeper dive on this specific issue, so if you could please file a support ticket with the Target team and include this detailed information we would appreciate it!
For your second question regarding passing in the mbox3rdPartyId and authenticated vs. non-authenticated...
Tying attributes from a Customer Attributes Data Source is a little more involved than simply adding the mbox3rdPartyId. You are correct in that the ID declaration (tying the customer attributes ID to the Target user profile) piggybacks off of this functionality, but there are a couple other things that happen.
The way Customer Attributes is designed is the following process:
1- Create data source
2- Upload file with customer ID's
3- Customer then goes to website and identifies themselves by logging in
4- Customer Attributes are added to the Target Visitor Profile
In Step 3, Customer logs in, which identifies them and exposes their customerID (which was uploaded to a Customer Attributes data source). There is a method that then ("setCustomerIDs()") runs and ties that customerID to the Adobe Experience Cloud ID (ECID), which makes that connection known to the Customer Attributes system, and in turn Target and Analytics.
In short, the login by the customer is required to tie their customerID to the Adobe ECID.