refactor: making client context shared and updating scope specs