title: userId gets into the document magically
body: <p>This Meteor code is working fine, but I would like to ask if it is the way Meteor does things or it is a un predictable side effect that may change under some condition later.<br>
  The things is that when I do<br>
   <code>DisplayCol.insert({action: 'task1', element: 'p', value: value_variable});</code><br>
  Meteor also inserts the correct userId (using 2 different browsers logged in as 2 different users) which I did not explicitly included in the document. </p>
  
  <p>The above line of code is inside a server side function which is called from Meteor method.  </p>
  
  <p>here is the relevant information;  </p>
  
  <p>//lib/collection.js<br>
  <code>DisplayCol = new Mongo.Collection('displayCol');</code></p>
  
  <p>//server.js  </p>
  
  <pre><code>Meteor.publish('displayCol', function () {
    return DisplayCol.find({userId: this.userId});
  });
  DisplayCol.before.insert(function (userId, doc) {
    doc.userId = userId;
  });
  </code></pre>
  
  <p>In the <a href="https://github.com/matb33/meteor-collection-hooks" rel="nofollow">docs </a> of Collection hooks > Additional notes > second bulleted paragraph says:</p>
  
  <blockquote>
    <p>userId is available to find and findOne queries that were invoked within a publish function.  </p>
  </blockquote>
  
  <p>But this is a collection.insert. So should I explicitly include the userId in the document or let the collection hook do its hidden magic?  Thanks</p>