Making generic tasks and workflows visible to the client makes sense, but there are a lot of instances where we do not want to reveal the inner-workings and workflows to the end client (think proprietary methodologies).
Given that the current task board is 100% visible to the client (minus private notes), I suggest a way to tag a task as 'INTERNAL' (only visible to our team) or EXTERNAL/CLIENT (visible to both the team and the client).