How does Meteor know to initially compile files or not?

When running meteor in an application, what criteria does Meteor look for in order to know to compile things or not? Figured I’d ask before having to read through all the code. I’m not looking to change any code, I just want to know so that I can make those criteria exist manually.

For example, in a brand new app, running meteor will compile the app, but if you stop meteor, then run meteor again, it won’t compile anything. How does it know? @slava @glasser

@dgreensp @awatson1978 @arunoda, Might one of you know?

It mostly just looks inside the .meteor and .meteor/local/build directories.

@awatson1978 For sure, that’s what I thought too, and I know I can just delete the whole .meteor/local and Meteor will rebuild, but I’m wondering what are the smallest atomic changes I can make without removing the whole .meteor/local for Meteor to know it should rebuild.

This would help me make rocket:module more efficient. It currently deletes specific isopacks from .meteor/local, causing Meteor to rebuild those. Are isopacks the atomic unit for packages?

Is there an atomic unit for applications?