Hi Craig,
As per your proposal, it should be Okay, even without a configuration profile: I made right now a quick test, removing the procedure from my config profile and adding it to the two characteristics CHAR1 and CHAR2: CHAR3 is getting computed anyway.
However, I would create a dependency type 'Procedure', and not an 'Action', as this latter usage is deprecated.
Thanks and regards,
Flavio