Naming conflicts of similar intermediate models for different jobs

I’m looking at switching from traditional SQL scripts to dbt models. In our current setup, we have 100+ transformations. Each transformation creates many temp tables along the way. Several transformations that run at the same time may create and use a table regarding sales, so we have

CREATE TEMP TABLE _sales AS
	SELECT
	...
;

(we prefix all temp tables with _).

Right now, this isn’t a problem, because each transformation has it’s own session.

What would be the recommendation for these intermediate models in dbt since every model name has to be globally unique? We do try to name things explicitly, so the name is often longer than just “sales”, but often that’s just what makes sense.

I’d prefer to not have to get crazy with unreasonable long / ugly names that can guarantee uniqueness (such as “this_final_output_model_name_sales” or something like that).