Part Configuration Madness!

This is driving me nuts!

So I've created a part and been through the process of using equations and/or design tables to create a configuration for the part.

BUT!! It seems there is no way to create a general configuration of a part that can change arbitrarily and not modify any other instances of the part in an assembly?

For example,

Suppose you have a simple cube as a part. You insert 3 into an assembly. Each cube will have arbitrary dimensions and continuous dimensions. You edit the dimensions to your liking but remember that these are not "cookie cutter" parts.

When you change the dimension of one of them it changes the dimensions of all of them since you have to edit the part to do so and you are actually changing the part file which ends up propagating to the assembly(and all other assemblies using it which is a nightmare, You can make the part virtual but that does not solve the original problem).

Ultimately it seems the only way to actually have 3 different configurations of the parts is to actually create 3 different configurations. If you use the part 100 times in different assemblies the part will need 100 different configurations. Even if all these parts are going to be cut out from a CNC machine that do not create "cookie cutter" parts.

Surely there is a way to configure the dimensions of an *INSTANCE* of a part in an assembly without having to create a configuration in the part itself?

Basically all I want to do is modify the dimensions of a part in an assembly and have the assembly record the changes and not the part. I would rather have an assembly master design table that lets me modify the dimensions of each instance of each part in the table rather than messing with the part).

e.g., For my cubes example, I would rather see

Cube 1 - "configuration data"

Cube 2 - "configuration data"

Cube 3 - "configuration data"

in the assembly they are used and be able to modify the configuration data without effecting the Cube part file or any other assemblies. (and possibly have the ability to propagate the configuration data back to the part if it is common).

Another simple example.

Suppose instead I have a washer part. Instead of configuring 100+ different dimensions for hole sizes, thickness, etc... I'd rather create a few standard sizes. Now suppose I create an assembly and have 3 washers in it. I'd like to be able to edit and modify their configurations without messing with the original part. Suppose these are non-standard washers dimensions that probably won't ever be used again(so no need to stick it in the part file).

Why not have the ability for the assembly to configure(or create a copy of the default configuration table that is stored in the assembly) the part, I might have a table in the assembly like,

Washer1 - 2.435in 0.342in 0.4in

Washer2 - 1.455in 1.342in 0.54in

Washer3 - 2.5in 1in 0.25in

Where the numbers are size, hole size, thickness.

and changing these values will change the part dimensions in the assembly and not mess with the part files at all.

Now suppose that Washer3 is actually a common enough configuration that I would like to actually store it in the part file as a new configuration. It should be rather easy to do with a simple click.

Is there any hope? I'm kind of mixing what I would like SW to have and what SW doesn't do but I'm hoping for some specialization capabilities for instances of parts in assemblies.

SolidworksParts And Features