How to Populate a Linked Record Field Using a Lookup Field in Airtable
You are working with three tables: Projects, Deals, and Clients.
A Deal is always linked to a Client. A Project may or may not be linked to a Deal. Because of that, in the Projects table you end up with two ways a Client can appear.
If a Project is linked to a Deal, the Client is already known. You can pull it in using a lookup field that looks up the Client from the Deal.
If a Project is created manually, there is no Deal yet. In those rows, the user has to manually pick a Client using a linked record field.
So in the Projects table, you now have two fields.
One lookup field that shows the Client coming from the Deal.
One linked record field where the user can manually select a Client.
Since Airtable already knows which Client belongs to the Project when it comes from a Deal, you just want to copy that value into the manual Client field.
How can we automate this?
How to set this up
You can do this with a single automation.

The trigger is When record is updated, and the field you watch is the Client lookup field. This ensures the automation runs only when that lookup becomes populated or changes.
The action is Update record. In this step, you set the manual Client linked field to the value coming from the lookup field.
That solves the problem. Projects created from Deals automatically get a Client linked. Projects created manually stay as they are.