A CUSTOMER workspace on the default role set, with no customer and no
members yet. A customer later takes it (CustomerService.createIn).
create's workspace with userId as its owner: an ACTIVE member on
the default role set's top non-internal role. On an error, a caller's tx
must be rolled back by the caller.
The customer's billing addresses and contact line, for operators: unlike
get, not gated on user-shadow:r or the customer being ACTIVE.
Null for no customer.
The workspaces CFX staff may enter (user-shadow:r only): live ACTIVE
customers with their main organization, each with its owner's keys as
the caller may use them.
Replace the billing addresses (trimmed, lowercased and deduplicated), the contact line (trimmed; blank clears it), or both. A contact line over 200 characters or with a control character is refused and nothing is written.
Operator-side writes to CUSTOMER dashboard workspaces, and staff's reads of them.