You dont need a tweak node for deltas. The blendahape works in 2 different ways depending on the way you connect to it. Whan you connect to it form a networked plug it computes the relative deltas from the base shape and input shape. BUT if the node is nonnetworked it IS a delta just liek tweaks are (just delete the connection). The main problem is that theese deltas are in local space coordinates and for most parts you would want corrective blendshapes in vertex tangetspace coordinates. This applies to tweaks as well by the way, if you have a blendshape at the location of a tweak it behaves the same.
Now the real purpose of a tweak node is to ennable you to do moves in the past history of your rig. This is a bit confusing because thw tweak nodes space might differ from teh space you see on screen. True, but i propose you just use 2 blendshapes its easier to manage.
Now the tweaks are a gui only thing, if you want to do this in code you should actually write the changes to the actual delta array. The tweak node is a partical shape node, each shape node also has a tweak array so you need to be able to programmatically acces that too.
To prevent this strange behaviour of the vertices while modeling, one could make a duplicate of the
deformed mesh to model without the strange constraints and then have a little mel script to snap the
vertices of the deformed mesh to the ones of the corrected modeled mesh afterwards.
Err yes, its just the longer way around. If you allready go into the pains to do this, then the blendshape node is perfectly capable of calcualting the dletas directly into your blendshape node directly too. This is much faster, easier and shorter as youll be doing the calculation at c++ speeds multithreaded and all. And it has all the facilities to do the snapping easy.
AND having the tweak node calculate the offsets relative to it's position in the deformation chain?
yes, its just thet the blendshape does this without the tweak. And if your tweak is even further different form where the blend is your in essence doing what you should use 2 different blendshapes as its cheaper in terms of storage space and calculating the deformation.
In essence nonnetworked blendshape nodes are OPTIMIZED tweaks with a weighted vector summing functionality. The blendshape node is actually the MOST useful node in maya, and it can do a lot of stuff thats not readily apparent (including a lot of linear algebraic stuff aswell as working as a deformer templating container). The only extra thing the tweak achieves is retargetting fo users actions on th fly, hich is just one temporary connection away. Bu the downside is >4 times the computational overhead.
relevant offsets relative to its position in the deformation chain
Well yes so does every other node in maya.
You idea is sound your just over complicating your task. Pretty much a basic maya rigging skill. Been using this kind of stuff since the 2000 (or well actually well before ive used maya in 1990 for the first time). Still a vertex tangent space deformation is better in terms of usability.