Smoke test = quick test to ensure the most critical functionality is not broken
    this is not so useful for us as the act of development involves many smoke tests on it's own
    also we don't release often enough to need this kind of test

Regression test = extremely detailed test to ensure *all* functionality is working properly
    this is the most useful test for us and the one to run before any releases
    Assuming it takes an hour or two at the most to run that's perfectly fine before a release as a sanity check